package rocks.inspectit.agent.java.tracing.core.transformer; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.is; import static org.hamcrest.Matchers.nullValue; import java.util.Collections; import org.testng.annotations.Test; import rocks.inspectit.agent.java.sdk.opentracing.internal.impl.SpanContextImpl; import rocks.inspectit.shared.all.tracing.data.SpanIdent; /** * @author Ivan Senic * */ public class SpanContextTransformerTest { public static class ContextToSpanIdent extends SpanContextTransformerTest { @Test public void happyPath() { SpanContextImpl context = new SpanContextImpl(1, 2, 3, null, Collections.<String, String> emptyMap()); SpanIdent spanIdent = SpanContextTransformer.transformSpanContext(context); assertThat(spanIdent.getId(), is(1L)); assertThat(spanIdent.getTraceId(), is(2L)); assertThat(spanIdent.getParentId(), is(3L)); } @Test public void contextNull() { SpanIdent spanIdent = SpanContextTransformer.transformSpanContext(null); assertThat(spanIdent, is(nullValue())); } @Test public void transformerInterface() { SpanContextImpl context = new SpanContextImpl(1, 2, 3, null, Collections.<String, String> emptyMap()); SpanIdent spanIdent = SpanContextTransformer.INSTANCE.transform(context); assertThat(spanIdent.getId(), is(1L)); assertThat(spanIdent.getTraceId(), is(2L)); assertThat(spanIdent.getParentId(), is(3L)); } @Test(expectedExceptions = IllegalArgumentException.class) public void transformerInterfaceWrongClass() { SpanContextTransformer.INSTANCE.transform("some string"); } } }