Beispiel #1
0
        public void ShouldUseSpecifiedHttpHeaderName()
        {
            // Arrange
            const string correlationId = "myCorrelationId";
            var          headers       = new HeaderDictionary(new Dictionary <string, StringValues>
            {
                { "Request-Id", correlationId }
            });

            var options = Options.Create(new DataverseODataClientOptions
            {
                CorrelationIdHeader = "Request-Id"
            });

            var httpContextAccessor = A.Fake <IHttpContextAccessor>();

            A.CallTo(() => httpContextAccessor.HttpContext.Request.Headers)
            .Returns(headers);

            var sut = new HttpHeaderCorrelationIdProvider(httpContextAccessor, options);

            // Act
            var result = sut.GetCorrelationId();

            // Assert
            result.Should().Be(correlationId);
        }
Beispiel #2
0
        public void ShouldReturnNullWhenHttpHeaderIsNotPresent()
        {
            // Arrange
            var options = Options.Create(new DataverseODataClientOptions());

            var httpContextAccessor = A.Fake <IHttpContextAccessor>();

            A.CallTo(() => httpContextAccessor.HttpContext.Request.Headers)
            .Returns(new HeaderDictionary());

            var sut = new HttpHeaderCorrelationIdProvider(httpContextAccessor, options);

            // Act
            var result = sut.GetCorrelationId();

            // Assert
            result.Should().BeNull();
        }