Skip to content

Commit 204c8a9

Browse files
committed
Refactor the test
1 parent 1dd8f41 commit 204c8a9

File tree

3 files changed

+63
-60
lines changed

3 files changed

+63
-60
lines changed
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
/*
2+
* Licensed to the Apache Software Foundation (ASF) under one or more
3+
* contributor license agreements. See the NOTICE file distributed with
4+
* this work for additional information regarding copyright ownership.
5+
* The ASF licenses this file to You under the Apache License, Version 2.0
6+
* (the "License"); you may not use this file except in compliance with
7+
* the License. You may obtain a copy of the License at
8+
*
9+
* http://www.apache.org/licenses/LICENSE-2.0
10+
*
11+
* Unless required by applicable law or agreed to in writing, software
12+
* distributed under the License is distributed on an "AS IS" BASIS,
13+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
* See the License for the specific language governing permissions and
15+
* limitations under the License.
16+
*/
17+
package org.apache.kafka.common.config.provider;
18+
19+
import org.apache.kafka.common.MetricName;
20+
import org.apache.kafka.common.config.ConfigData;
21+
import org.apache.kafka.common.metrics.Measurable;
22+
import org.apache.kafka.common.metrics.Monitorable;
23+
import org.apache.kafka.common.metrics.PluginMetrics;
24+
25+
import java.io.IOException;
26+
import java.util.Map;
27+
import java.util.Set;
28+
29+
public class MonitorableConfigProvider implements ConfigProvider, Monitorable {
30+
public static final String NAME = "name";
31+
public static final String DESCRIPTION = "description";
32+
protected boolean configured = false;
33+
34+
@Override
35+
public void withPluginMetrics(PluginMetrics metrics) {
36+
MetricName metricName = metrics.metricName(NAME, DESCRIPTION, Map.of());
37+
metrics.addMetric(metricName, (Measurable) (config, now) -> 123);
38+
}
39+
40+
@Override
41+
public ConfigData get(String path) {
42+
return null;
43+
}
44+
45+
@Override
46+
public ConfigData get(String path, Set<String> keys) {
47+
return null;
48+
}
49+
50+
@Override
51+
public void close() throws IOException {
52+
}
53+
54+
@Override
55+
public void configure(Map<String, ?> configs) {
56+
configured = true;
57+
}
58+
}

connect/runtime/src/test/java/org/apache/kafka/connect/runtime/WorkerTest.java

Lines changed: 1 addition & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -36,19 +36,16 @@
3636
import org.apache.kafka.common.MetricName;
3737
import org.apache.kafka.common.TopicPartition;
3838
import org.apache.kafka.common.config.AbstractConfig;
39-
import org.apache.kafka.common.config.ConfigData;
4039
import org.apache.kafka.common.config.ConfigException;
4140
import org.apache.kafka.common.config.provider.ConfigProvider;
4241
import org.apache.kafka.common.config.provider.MockFileConfigProvider;
42+
import org.apache.kafka.common.config.provider.MonitorableConfigProvider;
4343
import org.apache.kafka.common.errors.ClusterAuthorizationException;
4444
import org.apache.kafka.common.internals.KafkaFutureImpl;
4545
import org.apache.kafka.common.internals.Plugin;
4646
import org.apache.kafka.common.metrics.JmxReporter;
47-
import org.apache.kafka.common.metrics.Measurable;
4847
import org.apache.kafka.common.metrics.Metrics;
4948
import org.apache.kafka.common.metrics.MetricsReporter;
50-
import org.apache.kafka.common.metrics.Monitorable;
51-
import org.apache.kafka.common.metrics.PluginMetrics;
5249
import org.apache.kafka.common.metrics.stats.Avg;
5350
import org.apache.kafka.common.utils.LogCaptureAppender;
5451
import org.apache.kafka.common.utils.MockTime;
@@ -111,7 +108,6 @@
111108
import org.mockito.invocation.InvocationOnMock;
112109
import org.mockito.quality.Strictness;
113110

114-
import java.io.IOException;
115111
import java.lang.management.ManagementFactory;
116112
import java.util.Arrays;
117113
import java.util.Collection;
@@ -3280,33 +3276,4 @@ public void stop() {
32803276
}
32813277

32823278
}
3283-
3284-
public static class MonitorableConfigProvider implements ConfigProvider, Monitorable {
3285-
private static final String NAME = "name";
3286-
private static final String DESCRIPTION = "description";
3287-
3288-
@Override
3289-
public void withPluginMetrics(PluginMetrics metrics) {
3290-
MetricName metricName = metrics.metricName(NAME, DESCRIPTION, Map.of());
3291-
metrics.addMetric(metricName, (Measurable) (config, now) -> 123);
3292-
}
3293-
3294-
@Override
3295-
public ConfigData get(String path) {
3296-
return null;
3297-
}
3298-
3299-
@Override
3300-
public ConfigData get(String path, Set<String> keys) {
3301-
return null;
3302-
}
3303-
3304-
@Override
3305-
public void close() throws IOException {
3306-
}
3307-
3308-
@Override
3309-
public void configure(Map<String, ?> configs) {
3310-
}
3311-
}
33123279
}

connect/runtime/src/test/java/org/apache/kafka/connect/runtime/isolation/PluginsTest.java

Lines changed: 4 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,12 @@
1919

2020
import org.apache.kafka.common.Configurable;
2121
import org.apache.kafka.common.config.AbstractConfig;
22-
import org.apache.kafka.common.config.ConfigData;
2322
import org.apache.kafka.common.config.ConfigDef;
2423
import org.apache.kafka.common.config.ConfigException;
2524
import org.apache.kafka.common.config.provider.ConfigProvider;
25+
import org.apache.kafka.common.config.provider.MonitorableConfigProvider;
2626
import org.apache.kafka.common.internals.Plugin;
2727
import org.apache.kafka.common.metrics.Metrics;
28-
import org.apache.kafka.common.metrics.Monitorable;
2928
import org.apache.kafka.common.metrics.PluginMetrics;
3029
import org.apache.kafka.common.utils.LogCaptureAppender;
3130
import org.apache.kafka.common.utils.Utils;
@@ -56,7 +55,6 @@
5655
import org.junit.jupiter.api.Test;
5756

5857
import java.io.File;
59-
import java.io.IOException;
6058
import java.net.MalformedURLException;
6159
import java.net.URL;
6260
import java.net.URLClassLoader;
@@ -407,10 +405,10 @@ public void newConfigProviderShouldConfigureWithPluginClassLoader() {
407405
public void newConfigProviderShouldCallWithPluginMetricsAfterConfigure() {
408406
String providerName = "monitorable";
409407
String providerPrefix = WorkerConfig.CONFIG_PROVIDERS_CONFIG + "." + providerName;
410-
props.put(providerPrefix + ".class", MonitorableConfigProvider .class.getName());
408+
props.put(providerPrefix + ".class", CustomMonitorableConfigProvider .class.getName());
411409
createConfig();
412410
Plugin<ConfigProvider> plugin = plugins.newConfigProvider(config, providerName, ClassLoaderUsage.PLUGINS, new Metrics());
413-
assertInstanceOf(MonitorableConfigProvider.class, plugin.get());
411+
assertInstanceOf(CustomMonitorableConfigProvider.class, plugin.get());
414412
}
415413

416414
@Test
@@ -809,32 +807,12 @@ public void configure(Map<String, ?> configs) {
809807
}
810808
}
811809

812-
public static class MonitorableConfigProvider implements ConfigProvider, Monitorable {
813-
private boolean configured = false;
810+
public static class CustomMonitorableConfigProvider extends MonitorableConfigProvider {
814811

815812
@Override
816813
public void withPluginMetrics(PluginMetrics metrics) {
817814
assertTrue(configured);
818815
}
819-
820-
@Override
821-
public ConfigData get(String path) {
822-
return null;
823-
}
824-
825-
@Override
826-
public ConfigData get(String path, Set<String> keys) {
827-
return null;
828-
}
829-
830-
@Override
831-
public void close() throws IOException {
832-
}
833-
834-
@Override
835-
public void configure(Map<String, ?> configs) {
836-
configured = true;
837-
}
838816
}
839817

840818
}

0 commit comments

Comments
 (0)