public void Inject_UnknownFormatIgnored()
        {
            var tracerMock = new Mock <Trace.Tracer>();
            var shim       = TracerShim.Create(tracerMock.Object);

            var spanContextShim = new SpanContextShim(Defaults.GetOpenTelemetrySpanContext());

            // Only two specific types of ITextMap are supported, and neither is a Mock.
            var mockCarrier = new Mock <ITextMap>();

            shim.Inject(spanContextShim, new Mock <IFormat <ITextMap> >().Object, mockCarrier.Object);

            // Verify that the carrier mock was never called.
            mockCarrier.Verify(x => x.Set(It.IsAny <string>(), It.IsAny <string>()), Times.Never);
        }
        public void Inject_UnknownFormatIgnored()
        {
            var tracer = TracerProvider.Default.GetTracer(TracerName);
            var shim   = new TracerShim(tracer, new TextMapPropagator());

            var spanContextShim = new SpanContextShim(new SpanContext(ActivityTraceId.CreateRandom(), ActivitySpanId.CreateRandom(), ActivityTraceFlags.Recorded));

            // Only two specific types of ITextMap are supported, and neither is a Mock.
            var mockCarrier = new Mock <ITextMap>();

            shim.Inject(spanContextShim, new Mock <IFormat <ITextMap> >().Object, mockCarrier.Object);

            // Verify that the carrier mock was never called.
            mockCarrier.Verify(x => x.Set(It.IsAny <string>(), It.IsAny <string>()), Times.Never);
        }
Пример #3
0
        public void InjectExtract_TextMap_Ok()
        {
            var carrier = new TextMapCarrier();

            var spanContextShim = new SpanContextShim(new SpanContext(ActivityTraceId.CreateRandom(), ActivitySpanId.CreateRandom(), ActivityTraceFlags.None));

            var format = new TextMapPropagator();

            var tracer = TracerProvider.Default.GetTracer(TracerName);
            var shim   = new TracerShim(tracer, format);

            // first inject
            shim.Inject(spanContextShim, BuiltinFormats.TextMap, carrier);

            // then extract
            var extractedSpanContext = shim.Extract(BuiltinFormats.TextMap, carrier);

            AssertOpenTracerSpanContextEqual(spanContextShim, extractedSpanContext);
        }
Пример #4
0
        public void InjectExtract_Binary_Ok()
        {
            var tracerMock = new Mock <Trace.Tracer>();

            var carrier = new BinaryCarrier();

            var spanContextShim = new SpanContextShim(Defaults.GetOpenTelemetrySpanContext());

            var format = new BinaryFormat();

            var shim = new TracerShim(tracerMock.Object, new TraceContextFormat(), format);

            // first inject
            shim.Inject(spanContextShim, BuiltinFormats.Binary, carrier);

            // then extract
            var extractedSpanContext = shim.Extract(BuiltinFormats.Binary, carrier);

            AssertOpenTracerSpanContextEqual(spanContextShim, extractedSpanContext);
        }
        public void InjectExtract_TextMap_Ok()
        {
            var tracerMock = new Mock <Trace.ITracer>();

            var carrier = new TextMapCarrier();

            var spanContextShim = new SpanContextShim(Defaults.GetOpenTelemetrySpanContext());

            var format = new TraceContextFormat();

            tracerMock.Setup(x => x.TextFormat).Returns(format);

            var shim = TracerShim.Create(tracerMock.Object);

            // first inject
            shim.Inject(spanContextShim, BuiltinFormats.TextMap, carrier);

            // then extract
            var extractedSpanContext = shim.Extract(BuiltinFormats.TextMap, carrier);

            AssertOpenTracerSpanContextEqual(spanContextShim, extractedSpanContext);
        }