public void Extract_MissingParentIdHeader_Exception() { var headers = new MockTextMap(); headers.Set(HttpHeaderTraceId, "10"); Assert.Throws <ArgumentException>(() => _codec.Extract(headers)); }
public void Inject_UnknownFormat_Throws() { var span = (OpenTracingSpan)_tracer.BuildSpan("Span").Start(); var headers = new MockTextMap(); var mockFormat = new Mock <IFormat <ITextMap> >(); Assert.Throws <NotSupportedException>(() => _tracer.Inject(span.Context, mockFormat.Object, headers)); }
public void Extract_NonIntegerParentId_Exception() { var headers = new MockTextMap(); headers.Set(HttpHeaderTraceId, "hello"); headers.Set(HttpHeaderParentId, "10"); Assert.Throws <FormatException>(() => _codec.Extract(headers)); }
public void Inject_HttpHeadersFormat_CorrectHeaders() { var span = (OpenTracingSpan)_tracer.BuildSpan("Span").Start(); var headers = new MockTextMap(); _tracer.Inject(span.Context, BuiltinFormats.HttpHeaders, headers); Assert.Equal(span.DDSpan.Context.TraceId.ToString(), headers.Get(HttpHeaderNames.HttpHeaderTraceId)); Assert.Equal(span.DDSpan.Context.SpanId.ToString(), headers.Get(HttpHeaderNames.HttpHeaderParentId)); }
public void Inject_TextMapFormat_CorrectHeaders() { var span = (OpenTracingSpan)_tracer.BuildSpan("Span").Start(); var headers = new MockTextMap(); _tracer.Inject(span.Context, BuiltinFormats.TextMap, headers); Assert.Equal(span.Span.Context.TraceId.ToString(), headers.Get(B3HttpHeaderNames.B3TraceId)); Assert.Equal(span.Span.Context.SpanId.ToString("x16"), headers.Get(B3HttpHeaderNames.B3SpanId)); }
public void Extract_UnknownFormat_Throws() { const ulong parentId = 10; var traceId = TraceId.CreateFromInt(42); var headers = new MockTextMap(); headers.Set(DDHttpHeaderNames.ParentId, parentId.ToString()); headers.Set(DDHttpHeaderNames.TraceId, traceId.ToString()); var mockFormat = new Mock <IFormat <ITextMap> >(); Assert.Throws <NotSupportedException>(() => _tracer.Extract(mockFormat.Object, headers)); }
public void Extract_HeadersProperlySet_SpanContext() { const ulong parentId = 10; const ulong traceId = 42; var headers = new MockTextMap(); headers.Set(HttpHeaderNames.HttpHeaderParentId, parentId.ToString()); headers.Set(HttpHeaderNames.HttpHeaderTraceId, traceId.ToString()); var otSpanContext = (OpenTracingSpanContext)_tracer.Extract(BuiltinFormats.HttpHeaders, headers); Assert.Equal(parentId, otSpanContext.Context.SpanId); Assert.Equal(traceId, otSpanContext.Context.TraceId); }
public void Extract_TextMapFormat_HeadersProperlySet_SpanContext() { const ulong parentId = 10; var traceId = TraceId.CreateFromInt(42); var headers = new MockTextMap(); headers.Set(DDHttpHeaderNames.ParentId, parentId.ToString()); headers.Set(DDHttpHeaderNames.TraceId, traceId.ToString()); var otSpanContext = (OpenTracingSpanContext)_tracer.Extract(BuiltinFormats.TextMap, headers); Assert.Equal(parentId, otSpanContext.Context.SpanId); Assert.Equal(traceId, otSpanContext.Context.TraceId); }
public void Inject_SpanContext_HeadersWithCorrectInfo() { const ulong spanId = 10; const ulong traceId = 7; var ddSpanContext = new SpanContext(traceId, spanId); var spanContext = new OpenTracingSpanContext(ddSpanContext); var headers = new MockTextMap(); _codec.Inject(spanContext, headers); Assert.Equal(spanId.ToString(), headers.Get(HttpHeaderParentId)); Assert.Equal(traceId.ToString(), headers.Get(HttpHeaderTraceId)); }
public void Extract_WrongHeaderCase_ExtractionStillWorks() { const ulong traceId = 10; const ulong parentId = 120; var headers = new MockTextMap(); headers.Set(HttpHeaderTraceId.ToUpper(), traceId.ToString()); headers.Set(HttpHeaderParentId.ToUpper(), parentId.ToString()); var spanContext = _codec.Extract(headers); Assert.NotNull(spanContext); Assert.Equal(traceId, spanContext.Context.TraceId); Assert.Equal(parentId, spanContext.Context.SpanId); }
public void Extract_ValidParentAndTraceId_ProperSpanContext() { const ulong traceId = 10; const ulong parentId = 120; var headers = new MockTextMap(); headers.Set(HttpHeaderTraceId, traceId.ToString()); headers.Set(HttpHeaderParentId, parentId.ToString()); var spanContext = _codec.Extract(headers); Assert.NotNull(spanContext); Assert.Equal(traceId, spanContext.Context.TraceId); Assert.Equal(parentId, spanContext.Context.SpanId); }
public void Inject_SpanContext_HeadersWithCorrectInfo() { const ulong spanId = 10; const ulong traceId = 7; const SamplingPriority samplingPriority = SamplingPriority.UserKeep; var ddSpanContext = new SpanContext(traceId, spanId, samplingPriority); var spanContext = new OpenTracingSpanContext(ddSpanContext); var headers = new MockTextMap(); _codec.Inject(spanContext, headers); Assert.Equal(spanId.ToString("x16"), headers.Get(HttpHeaderParentId)); Assert.Equal(traceId.ToString("x16"), headers.Get(HttpHeaderTraceId)); Assert.Equal("1", headers.Get(HttpHeaderDebugSamplingPriority)); }
public void Inject_SpanContext_HeadersWithCorrectInfo() { const ulong spanId = 10; var traceId = TraceId.CreateFromInt(7); const SamplingPriority samplingPriority = SamplingPriority.UserKeep; var ddSpanContext = new SpanContext(traceId, spanId, samplingPriority); var spanContext = new OpenTracingSpanContext(ddSpanContext); var headers = new MockTextMap(); _codec.Inject(spanContext, headers); Assert.Equal(spanId.ToString(), headers.Get(HttpHeaderParentId)); Assert.Equal(traceId.ToString(), headers.Get(HttpHeaderTraceId)); Assert.Equal(((int)samplingPriority).ToString(), headers.Get(HttpHeaderSamplingPriority)); }
public void Extract_ValidParentAndTraceId_ProperSpanContext() { var traceId = TraceId.CreateFromInt(10); const ulong parentId = 120; var headers = new MockTextMap(); headers.Set(HttpHeaderTraceId, traceId.ToString()); headers.Set(HttpHeaderParentId, parentId.ToString("x16")); var spanContext = _codec.Extract(headers) as OpenTracingSpanContext; Assert.NotNull(spanContext); Assert.Equal(traceId, spanContext.Context.TraceId); Assert.Equal(parentId, spanContext.Context.SpanId); }
public void Extract_WrongHeaderCase_ExtractionStillWorks() { const ulong traceId = 10; const ulong parentId = 120; const SamplingPriority samplingPriority = SamplingPriority.AutoKeep; var headers = new MockTextMap(); headers.Set(HttpHeaderTraceId.ToUpper(), traceId.ToString("x16")); headers.Set(HttpHeaderParentId.ToUpper(), parentId.ToString("x16")); headers.Set(HttpHeaderSamplingPriority.ToUpper(), ((int)samplingPriority).ToString()); var spanContext = _codec.Extract(headers) as OpenTracingSpanContext; Assert.NotNull(spanContext); Assert.Equal(traceId, spanContext.Context.TraceId); Assert.Equal(parentId, spanContext.Context.SpanId); }