From e0cf3cf17d98cc7a92fd559b2f15b854fbd4e62d Mon Sep 17 00:00:00 2001 From: Mike Drob Date: Fri, 26 Aug 2016 08:01:03 -0500 Subject: [PATCH] HTRACE-381. Use constants instead of strings for key names --- .../test/java/org/apache/htrace/core/TestBadClient.java | 16 ++++++---------- .../test/java/org/apache/htrace/core/TestHTrace.java | 14 +++++--------- .../apache/htrace/core/TestLocalFileSpanReceiver.java | 8 ++++---- .../test/java/org/apache/htrace/core/TestSampler.java | 11 +++++++---- .../java/org/apache/htrace/core/TestTraceExecutor.java | 8 ++++---- .../src/test/java/org/apache/htrace/util/TestUtil.java | 17 +++++++++++++++++ 6 files changed, 43 insertions(+), 31 deletions(-) diff --git a/htrace-core4/src/test/java/org/apache/htrace/core/TestBadClient.java b/htrace-core4/src/test/java/org/apache/htrace/core/TestBadClient.java index 87ae8e9..761c047 100644 --- a/htrace-core4/src/test/java/org/apache/htrace/core/TestBadClient.java +++ b/htrace-core4/src/test/java/org/apache/htrace/core/TestBadClient.java @@ -26,6 +26,7 @@ import static org.junit.Assert.assertThat; import static org.junit.Assert.assertTrue; import static org.hamcrest.CoreMatchers.containsString; +import org.apache.htrace.util.TestUtil; import org.junit.After; import org.junit.Assert; import org.junit.Test; @@ -46,8 +47,7 @@ public class TestBadClient { Tracer tracer = new Tracer.Builder(). name("TestClosingOuterScopeTracer"). tracerPool(new TracerPool("TestClosingOuterScope")). - conf(HTraceConfiguration. - fromKeyValuePairs("sampler.classes", "AlwaysSampler")).build(); + conf(TestUtil.confForSampler(AlwaysSampler.class)).build(); boolean gotException = false; TraceScope outerScope = tracer.newScope("outer"); TraceScope innerScope = tracer.newScope("inner"); @@ -72,8 +72,7 @@ public class TestBadClient { Tracer tracer = new Tracer.Builder(). name("TestDoubleDetach"). tracerPool(new TracerPool("TestDoubleDetachIsCaught")). - conf(HTraceConfiguration. - fromKeyValuePairs("sampler.classes", "AlwaysSampler")).build(); + conf(TestUtil.confForSampler(AlwaysSampler.class)).build(); boolean gotException = false; TraceScope myScope = tracer.newScope("myScope"); myScope.detach(); @@ -97,8 +96,7 @@ public class TestBadClient { Tracer tracer = new Tracer.Builder(). name("TestDoubleDetachOnNullScope"). tracerPool(new TracerPool("TestDoubleDetachOnNullScope")). - conf(HTraceConfiguration. - fromKeyValuePairs("sampler.classes", "NeverSampler")).build(); + conf(TestUtil.confForSampler(NeverSampler.class)).build(); boolean gotException = false; TraceScope myScope = tracer.newScope("myScope"); myScope.detach(); @@ -122,8 +120,7 @@ public class TestBadClient { Tracer tracer = new Tracer.Builder(). name("TestDoubleReattach"). tracerPool(new TracerPool("TestDoubleReattachIsCaught")). - conf(HTraceConfiguration. - fromKeyValuePairs("sampler.classes", "AlwaysSampler")).build(); + conf(TestUtil.confForSampler(AlwaysSampler.class)).build(); boolean gotException = false; TraceScope myScope = tracer.newScope("myScope"); myScope.detach(); @@ -156,8 +153,7 @@ public class TestBadClient { final Tracer tracer = new Tracer.Builder(). name("TestPassingSpanBetweenThreads"). tracerPool(new TracerPool("TestPassingSpanBetweenThreads")). - conf(HTraceConfiguration. - fromKeyValuePairs("sampler.classes", "AlwaysSampler")).build(); + conf(TestUtil.confForSampler(AlwaysSampler.class)).build(); POJOSpanReceiver receiver = new POJOSpanReceiver(HTraceConfiguration.EMPTY); tracer.getTracerPool().addReceiver(receiver); diff --git a/htrace-core4/src/test/java/org/apache/htrace/core/TestHTrace.java b/htrace-core4/src/test/java/org/apache/htrace/core/TestHTrace.java index 06ca189..a60049c 100644 --- a/htrace-core4/src/test/java/org/apache/htrace/core/TestHTrace.java +++ b/htrace-core4/src/test/java/org/apache/htrace/core/TestHTrace.java @@ -21,7 +21,7 @@ import java.util.HashMap; import java.util.Map; import org.apache.htrace.core.TraceGraph.SpansByParent; - +import org.apache.htrace.util.TestUtil; import org.junit.Assert; import org.junit.Test; @@ -31,8 +31,7 @@ public class TestHTrace { Tracer tracer = new Tracer.Builder(). name("TestSimpleScope"). tracerPool(new TracerPool("TestTracerCreateAndClose")). - conf(HTraceConfiguration.fromKeyValuePairs( - "sampler.classes", "AlwaysSampler")). + conf(TestUtil.confForSampler(AlwaysSampler.class)). build(); POJOSpanReceiver receiver = new POJOSpanReceiver(HTraceConfiguration.EMPTY); @@ -46,8 +45,7 @@ public class TestHTrace { Tracer tracer = new Tracer.Builder(). name("TestSimpleScope"). tracerPool(new TracerPool("TestSimpleScope")). - conf(HTraceConfiguration.fromKeyValuePairs( - "sampler.classes", "AlwaysSampler")). + conf(TestUtil.confForSampler(AlwaysSampler.class)). build(); POJOSpanReceiver receiver = new POJOSpanReceiver(HTraceConfiguration.EMPTY); @@ -65,8 +63,7 @@ public class TestHTrace { Tracer tracer = new Tracer.Builder(). name("TestCreateSpans"). tracerPool(new TracerPool("TestCreateSpans")). - conf(HTraceConfiguration.fromKeyValuePairs( - "sampler.classes", "AlwaysSampler")). + conf(TestUtil.confForSampler(AlwaysSampler.class)). build(); POJOSpanReceiver receiver = new POJOSpanReceiver(HTraceConfiguration.EMPTY); @@ -116,8 +113,7 @@ public class TestHTrace { Tracer tracer = new Tracer.Builder(). name("testRootSpansHaveNonZeroSpanId"). tracerPool(new TracerPool("testRootSpansHaveNonZeroSpanId")). - conf(HTraceConfiguration.fromKeyValuePairs( - "sampler.classes", "AlwaysSampler")).build(); + conf(TestUtil.confForSampler(AlwaysSampler.class)).build(); TraceScope scope = tracer. newScope("myRootSpan", new SpanId(100L, 200L)); Assert.assertNotNull(scope); diff --git a/htrace-core4/src/test/java/org/apache/htrace/core/TestLocalFileSpanReceiver.java b/htrace-core4/src/test/java/org/apache/htrace/core/TestLocalFileSpanReceiver.java index 9388707..6310078 100644 --- a/htrace-core4/src/test/java/org/apache/htrace/core/TestLocalFileSpanReceiver.java +++ b/htrace-core4/src/test/java/org/apache/htrace/core/TestLocalFileSpanReceiver.java @@ -48,10 +48,10 @@ public class TestLocalFileSpanReceiver { name("testWriteToLocalFileTracer"). tracerPool(new TracerPool("testWriteToLocalFile")). conf(HTraceConfiguration.fromKeyValuePairs( - "sampler.classes", "AlwaysSampler", - "span.receiver.classes", LocalFileSpanReceiver.class.getName(), - "local.file.span.receiver.path", traceFileName, - "tracer.id", "%{tname}")). + Tracer.SAMPLER_CLASSES_KEY, "AlwaysSampler", + Tracer.SPAN_RECEIVER_CLASSES_KEY, LocalFileSpanReceiver.class.getName(), + LocalFileSpanReceiver.PATH_KEY, traceFileName, + TracerId.TRACER_ID_KEY, "%{tname}")). build(); TraceScope scope = tracer.newScope("testWriteToLocalFile"); scope.close(); diff --git a/htrace-core4/src/test/java/org/apache/htrace/core/TestSampler.java b/htrace-core4/src/test/java/org/apache/htrace/core/TestSampler.java index 92943b5..36550d5 100644 --- a/htrace-core4/src/test/java/org/apache/htrace/core/TestSampler.java +++ b/htrace-core4/src/test/java/org/apache/htrace/core/TestSampler.java @@ -70,20 +70,23 @@ public class TestSampler { @Test public void testTracerBuilderCreatesCorrectSamplers() { + // Use string instead of constant to check regressions + final String SAMPLER_KEY = "sampler.classes"; + Sampler[] samplers = getSamplersFromConf(HTraceConfiguration. - fromKeyValuePairs("sampler.classes", "AlwaysSampler")); + fromKeyValuePairs(SAMPLER_KEY, "AlwaysSampler")); checkArrayContains(AlwaysSampler.class, samplers); samplers = getSamplersFromConf(HTraceConfiguration. - fromKeyValuePairs("sampler.classes", "NeverSampler")); + fromKeyValuePairs(SAMPLER_KEY, "NeverSampler")); checkArrayContains(NeverSampler.class, samplers); samplers = getSamplersFromConf(HTraceConfiguration. - fromKeyValuePairs("sampler.classes", "NonExistentSampler")); + fromKeyValuePairs(SAMPLER_KEY, "NonExistentSampler")); Assert.assertEquals(0, samplers.length); samplers = getSamplersFromConf(HTraceConfiguration. - fromKeyValuePairs("sampler.classes", "java.lang.String")); + fromKeyValuePairs(SAMPLER_KEY, "java.lang.String")); Assert.assertEquals(0, samplers.length); samplers = getSamplersFromConf(HTraceConfiguration.EMPTY); diff --git a/htrace-core4/src/test/java/org/apache/htrace/core/TestTraceExecutor.java b/htrace-core4/src/test/java/org/apache/htrace/core/TestTraceExecutor.java index 1bd18f7..5c04726 100644 --- a/htrace-core4/src/test/java/org/apache/htrace/core/TestTraceExecutor.java +++ b/htrace-core4/src/test/java/org/apache/htrace/core/TestTraceExecutor.java @@ -34,6 +34,7 @@ import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.atomic.AtomicReference; import org.apache.htrace.core.Tracer.Builder; +import org.apache.htrace.util.TestUtil; import org.junit.Test; public class TestTraceExecutor { @@ -41,7 +42,7 @@ public class TestTraceExecutor { @Test public void testExecutorWithNullScope() throws Exception { - HTraceConfiguration conf = HTraceConfiguration.fromKeyValuePairs("sampler.classes", "AlwaysSampler"); + HTraceConfiguration conf = TestUtil.confForSampler(AlwaysSampler.class); ExecutorService es = null; try (Tracer tracer = new Tracer.Builder("TestTraceExecutor").conf(conf).build()) { es = Executors.newSingleThreadExecutor(new NamingThreadFactory()); @@ -76,7 +77,7 @@ public class TestTraceExecutor { @Test public void testWrappingFromSpan() throws Exception { - HTraceConfiguration conf = HTraceConfiguration.fromKeyValuePairs("sampler.classes", "AlwaysSampler"); + HTraceConfiguration conf = TestUtil.confForSampler(AlwaysSampler.class); ExecutorService es = Executors.newSingleThreadExecutor(); try (Tracer tracer = new Tracer.Builder("TestTraceExecutor").conf(conf).build()) { @@ -101,8 +102,7 @@ public class TestTraceExecutor { final int TASK_COUNT = 3; final int DELAY = 500; - HTraceConfiguration conf = HTraceConfiguration.fromKeyValuePairs( - Tracer.SAMPLER_CLASSES_KEY, AlwaysSampler.class.getName()); + HTraceConfiguration conf = TestUtil.confForSampler(AlwaysSampler.class); ScheduledExecutorService ses = null; Builder builder = new Tracer.Builder("TestTraceExecutor").conf(conf); diff --git a/htrace-core4/src/test/java/org/apache/htrace/util/TestUtil.java b/htrace-core4/src/test/java/org/apache/htrace/util/TestUtil.java index 0869ca0..a6197be 100644 --- a/htrace-core4/src/test/java/org/apache/htrace/util/TestUtil.java +++ b/htrace-core4/src/test/java/org/apache/htrace/util/TestUtil.java @@ -16,10 +16,13 @@ */ package org.apache.htrace.util; +import org.apache.htrace.core.HTraceConfiguration; import org.apache.htrace.core.MilliSpan; import org.apache.htrace.core.Span; +import org.apache.htrace.core.Sampler; import org.apache.htrace.core.SpanId; import org.apache.htrace.core.TimelineAnnotation; +import org.apache.htrace.core.Tracer; import java.io.File; import java.util.HashMap; @@ -163,4 +166,18 @@ public class TestUtil { } return spans; } + + /** + * Create {@link HTraceConfiguration} with the configured {@link Sampler} + * class. + * + * @param sampler + * the sampler class to use + * @return configuration with the "sampler.classes" property appropriately set + */ + public static HTraceConfiguration confForSampler( + Class sampler) { + return HTraceConfiguration. + fromKeyValuePairs(Tracer.SAMPLER_CLASSES_KEY, sampler.getName()); + } } -- 1.9.1