public void should_pass_down_request_id_from_upstream_request()
        {
            var downstreamRoute = new DownstreamRouteHolder(new List <PlaceholderNameAndValue>(),
                                                            new RouteBuilder()
                                                            .WithDownstreamRoute(new DownstreamRouteBuilder()
                                                                                 .WithDownstreamPathTemplate("any old string")
                                                                                 .WithRequestIdKey("LSRequestId")
                                                                                 .WithUpstreamHttpMethod(new List <string> {
                "Get"
            })
                                                                                 .Build())
                                                            .WithUpstreamHttpMethod(new List <string> {
                "Get"
            })
                                                            .Build());

            var requestId = Guid.NewGuid().ToString();

            this.Given(x => x.GivenTheDownStreamRouteIs(downstreamRoute))
            .And(x => GivenThereIsNoGlobalRequestId())
            .And(x => x.GivenTheRequestIdIsAddedToTheRequest("LSRequestId", requestId))
            .When(x => x.WhenICallTheMiddleware())
            .Then(x => x.ThenTheTraceIdIs(requestId))
            .BDDfy();
        }
        public void should_not_update_if_global_request_id_is_same_as_re_route_request_id()
        {
            var downstreamRoute = new DownstreamRouteHolder(new List <PlaceholderNameAndValue>(),
                                                            new RouteBuilder()
                                                            .WithDownstreamRoute(new DownstreamRouteBuilder()
                                                                                 .WithDownstreamPathTemplate("any old string")
                                                                                 .WithRequestIdKey("LSRequestId")
                                                                                 .WithUpstreamHttpMethod(new List <string> {
                "Get"
            })
                                                                                 .Build())
                                                            .WithUpstreamHttpMethod(new List <string> {
                "Get"
            })
                                                            .Build());

            var requestId = "alreadyset";

            this.Given(x => x.GivenTheDownStreamRouteIs(downstreamRoute))
            .And(x => GivenTheRequestIdWasSetGlobally())
            .And(x => x.GivenTheRequestIdIsAddedToTheRequest("LSRequestId", requestId))
            .When(x => x.WhenICallTheMiddleware())
            .Then(x => x.ThenTheTraceIdIs(requestId))
            .And(x => ThenTheRequestIdIsNotUpdated())
            .BDDfy();
        }
        public void should_add_request_id_when_not_on_upstream_request()
        {
            var downstreamRoute = new DownstreamRouteHolder(new List <PlaceholderNameAndValue>(),
                                                            new RouteBuilder()
                                                            .WithDownstreamRoute(new DownstreamRouteBuilder()
                                                                                 .WithDownstreamPathTemplate("any old string")
                                                                                 .WithRequestIdKey("LSRequestId")
                                                                                 .WithUpstreamHttpMethod(new List <string> {
                "Get"
            })
                                                                                 .Build())
                                                            .WithUpstreamHttpMethod(new List <string> {
                "Get"
            })
                                                            .Build());

            this.Given(x => x.GivenTheDownStreamRouteIs(downstreamRoute))
            .And(x => GivenThereIsNoGlobalRequestId())
            .When(x => x.WhenICallTheMiddleware())
            .Then(x => x.ThenTheTraceIdIsAnything())
            .BDDfy();
        }
        private void GivenTheDownStreamRouteIs(DownstreamRouteHolder downstreamRoute)
        {
            _httpContext.Items.UpsertTemplatePlaceholderNameAndValues(downstreamRoute.TemplatePlaceholderNameAndValues);

            _httpContext.Items.UpsertDownstreamRoute(downstreamRoute.Route.DownstreamRoute[0]);
        }
Ejemplo n.º 5
0
 private void GivenThereIsAUrlMatch(DownstreamRouteHolder downstreamRoute)
 {
     _downstreamRoute = downstreamRoute;
 }