aboutsummaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authorsebright <sebright@google.com>2018-09-04 10:28:37 -0700
committerGitHub <noreply@github.com>2018-09-04 10:28:37 -0700
commit6638ad600f91723562925ba88cbd64411e0ab595 (patch)
treea4465e85281bf8edd232c3f8ea191ca1d7e38db0 /contrib
parent8a95c21ee28805311d82d76d4dd323d778c59bbd (diff)
downloadopencensus-java-6638ad600f91723562925ba88cbd64411e0ab595.tar.gz
Log4j log correlation: Add unit tests for handling configuration properties. (#1405)
Diffstat (limited to 'contrib')
-rw-r--r--contrib/log_correlation/log4j/src/test/java/io/opencensus/contrib/logcorrelation/log4j/OpenCensusLog4jLogCorrelationAllSpansTest.java1
-rw-r--r--contrib/log_correlation/log4j/src/test/java/io/opencensus/contrib/logcorrelation/log4j/OpenCensusTraceContextDataInjectorTest.java68
2 files changed, 68 insertions, 1 deletions
diff --git a/contrib/log_correlation/log4j/src/test/java/io/opencensus/contrib/logcorrelation/log4j/OpenCensusLog4jLogCorrelationAllSpansTest.java b/contrib/log_correlation/log4j/src/test/java/io/opencensus/contrib/logcorrelation/log4j/OpenCensusLog4jLogCorrelationAllSpansTest.java
index 7b992e45..fb417004 100644
--- a/contrib/log_correlation/log4j/src/test/java/io/opencensus/contrib/logcorrelation/log4j/OpenCensusLog4jLogCorrelationAllSpansTest.java
+++ b/contrib/log_correlation/log4j/src/test/java/io/opencensus/contrib/logcorrelation/log4j/OpenCensusLog4jLogCorrelationAllSpansTest.java
@@ -36,7 +36,6 @@ import org.junit.runners.JUnit4;
* OpenCensusTraceContextDataInjector#SPAN_SELECTION_PROPERTY_NAME} set to {@link
* SpanSelection#ALL_SPANS}.
*/
-// TODO(sebright): Add a test with non-empty configuration properties.
@RunWith(JUnit4.class)
public final class OpenCensusLog4jLogCorrelationAllSpansTest
extends AbstractOpenCensusLog4jLogCorrelationTest {
diff --git a/contrib/log_correlation/log4j/src/test/java/io/opencensus/contrib/logcorrelation/log4j/OpenCensusTraceContextDataInjectorTest.java b/contrib/log_correlation/log4j/src/test/java/io/opencensus/contrib/logcorrelation/log4j/OpenCensusTraceContextDataInjectorTest.java
index 65c37f1f..832ab668 100644
--- a/contrib/log_correlation/log4j/src/test/java/io/opencensus/contrib/logcorrelation/log4j/OpenCensusTraceContextDataInjectorTest.java
+++ b/contrib/log_correlation/log4j/src/test/java/io/opencensus/contrib/logcorrelation/log4j/OpenCensusTraceContextDataInjectorTest.java
@@ -18,7 +18,15 @@ package io.opencensus.contrib.logcorrelation.log4j;
import static com.google.common.truth.Truth.assertThat;
+import com.google.common.collect.ImmutableMap;
+import com.google.common.collect.Lists;
import io.opencensus.contrib.logcorrelation.log4j.OpenCensusTraceContextDataInjector.SpanSelection;
+import java.util.Collections;
+import java.util.Map;
+import org.apache.logging.log4j.core.config.Property;
+import org.apache.logging.log4j.util.BiConsumer;
+import org.apache.logging.log4j.util.SortedArrayStringMap;
+import org.apache.logging.log4j.util.StringMap;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
@@ -82,4 +90,64 @@ public final class OpenCensusTraceContextDataInjectorTest {
System.clearProperty(OpenCensusTraceContextDataInjector.SPAN_SELECTION_PROPERTY_NAME);
}
}
+
+ @Test
+ public void insertConfigurationProperties() {
+ assertThat(
+ toMap(
+ new OpenCensusTraceContextDataInjector()
+ .injectContextData(
+ Lists.newArrayList(
+ Property.createProperty("property1", "value1"),
+ Property.createProperty("property2", "value2")),
+ new SortedArrayStringMap())))
+ .containsExactly(
+ "property1",
+ "value1",
+ "property2",
+ "value2",
+ "openCensusTraceId",
+ "00000000000000000000000000000000",
+ "openCensusSpanId",
+ "0000000000000000",
+ "openCensusTraceSampled",
+ "false");
+ }
+
+ @Test
+ public void handleEmptyConfigurationProperties() {
+ assertContainsOnlyDefaultTracingEntries(
+ new OpenCensusTraceContextDataInjector()
+ .injectContextData(Collections.<Property>emptyList(), new SortedArrayStringMap()));
+ }
+
+ @Test
+ public void handleNullConfigurationProperties() {
+ assertContainsOnlyDefaultTracingEntries(
+ new OpenCensusTraceContextDataInjector()
+ .injectContextData(null, new SortedArrayStringMap()));
+ }
+
+ private static void assertContainsOnlyDefaultTracingEntries(StringMap stringMap) {
+ assertThat(toMap(stringMap))
+ .containsExactly(
+ "openCensusTraceId",
+ "00000000000000000000000000000000",
+ "openCensusSpanId",
+ "0000000000000000",
+ "openCensusTraceSampled",
+ "false");
+ }
+
+ private static Map<String, String> toMap(StringMap stringMap) {
+ final ImmutableMap.Builder<String, String> builder = ImmutableMap.builder();
+ stringMap.forEach(
+ new BiConsumer<String, String>() {
+ @Override
+ public void accept(String key, String value) {
+ builder.put(key, value);
+ }
+ });
+ return builder.build();
+ }
}