public void Extract_MissingParentIdHeader_Exception()
        {
            _headers.Set(HttpHeaderTraceId, "10");
            var context = HeaderCollectionPropagator.Extract(_headers);

            Assert.Null(context);
        }
        public void Extract_NonIntegerParentId_Exception()
        {
            _headers.Set(HttpHeaderTraceId, "hello");
            _headers.Set(HttpHeaderParentId, "10");
            var context = HeaderCollectionPropagator.Extract(_headers);

            Assert.Null(context);
        }
        public void Extract_WrongHeaderCase_ExtractionStillWorks()
        {
            const ulong traceId  = 10;
            const ulong parentId = 120;

            _headers.Set(HttpHeaderTraceId.ToUpper(), traceId.ToString());
            _headers.Set(HttpHeaderParentId.ToUpper(), parentId.ToString());
            var spanContext = HeaderCollectionPropagator.Extract(_headers);

            Assert.NotNull(spanContext);
            Assert.Equal(traceId, spanContext.TraceId);
            Assert.Equal(parentId, spanContext.SpanId);
        }
        public void Extract_ValidParentAndTraceId_ProperSpanContext()
        {
            const ulong traceId  = 10;
            const ulong parentId = 120;

            _headers.Set(HttpHeaderTraceId, traceId.ToString());
            _headers.Set(HttpHeaderParentId, parentId.ToString());
            var spanContext = HeaderCollectionPropagator.Extract(_headers);

            Assert.NotNull(spanContext);
            Assert.Equal(traceId, spanContext.TraceId);
            Assert.Equal(parentId, spanContext.SpanId);
        }
        public void Extract_NoHeaders_Exception()
        {
            var context = HeaderCollectionPropagator.Extract(_headers);

            Assert.Null(context);
        }