Skip to content

Commit

Permalink
AMBARI-25866: Fix an unit test failure on ambari-metrics-kafka-sink (a…
Browse files Browse the repository at this point in the history
  • Loading branch information
kevinw66 committed Feb 24, 2023
1 parent 594fe0e commit acf538b
Showing 1 changed file with 11 additions and 10 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
import com.yammer.metrics.core.MetricsRegistry;
import com.yammer.metrics.core.Timer;
import junit.framework.Assert;
import kafka.metrics.KafkaYammerMetrics;
import kafka.utils.VerifiableProperties;
import org.apache.hadoop.metrics2.sink.timeline.TimelineMetric;
import org.apache.hadoop.metrics2.sink.timeline.cache.TimelineMetricsCache;
Expand All @@ -51,7 +52,7 @@

@RunWith(PowerMockRunner.class)
@PrepareForTest({ Metrics.class, URL.class, OutputStream.class,
KafkaTimelineMetricsReporter.TimelineScheduledReporter.class })
KafkaTimelineMetricsReporter.TimelineScheduledReporter.class, KafkaYammerMetrics.class })
@PowerMockIgnore({"javax.management.*", "org.apache.log4j.*", "org.slf4j.*"})
public class KafkaTimelineMetricsReporterTest {

Expand Down Expand Up @@ -92,23 +93,23 @@ public void setUp() throws Exception {

@Test
public void testReporterStartStop() {
mockStatic(Metrics.class);
EasyMock.expect(Metrics.defaultRegistry()).andReturn(registry).times(2);
mockStatic(KafkaYammerMetrics.class);
EasyMock.expect(KafkaYammerMetrics.defaultRegistry()).andReturn(registry).times(2);
TimelineMetricsCache timelineMetricsCache = getTimelineMetricsCache(kafkaTimelineMetricsReporter);
kafkaTimelineMetricsReporter.setMetricsCache(timelineMetricsCache);
replay(Metrics.class, timelineMetricsCache);
replay(KafkaYammerMetrics.class, timelineMetricsCache);
kafkaTimelineMetricsReporter.init(props);
kafkaTimelineMetricsReporter.stopReporter();
verifyAll();
}

@Test
public void testReporterStartStopHttps() {
mockStatic(Metrics.class);
EasyMock.expect(Metrics.defaultRegistry()).andReturn(registry).times(2);
mockStatic(KafkaYammerMetrics.class);
EasyMock.expect(KafkaYammerMetrics.defaultRegistry()).andReturn(registry).times(2);
TimelineMetricsCache timelineMetricsCache = getTimelineMetricsCache(kafkaTimelineMetricsReporter);
kafkaTimelineMetricsReporter.setMetricsCache(timelineMetricsCache);
replay(Metrics.class, timelineMetricsCache);
replay(KafkaYammerMetrics.class, timelineMetricsCache);

Properties properties = new Properties();
properties.setProperty("zookeeper.connect", "localhost:2181");
Expand All @@ -133,12 +134,12 @@ public void testReporterStartStopHttps() {

@Test
public void testMetricsExclusionPolicy() throws Exception {
mockStatic(Metrics.class);
EasyMock.expect(Metrics.defaultRegistry()).andReturn(registry).times(2);
mockStatic(KafkaYammerMetrics.class);
EasyMock.expect(KafkaYammerMetrics.defaultRegistry()).andReturn(registry).times(2);
TimelineMetricsCache timelineMetricsCache = getTimelineMetricsCache(kafkaTimelineMetricsReporter);
kafkaTimelineMetricsReporter.setMetricsCache(timelineMetricsCache);

replay(Metrics.class, timelineMetricsCache);
replay(KafkaYammerMetrics.class, timelineMetricsCache);
kafkaTimelineMetricsReporter.init(props);

Assert.assertTrue(kafkaTimelineMetricsReporter.isExcludedMetric("a.b.c"));
Expand Down

0 comments on commit acf538b

Please sign in to comment.