public void TraceEndpointMiddleware_PathAndVerbMatching_ReturnsExpected() { var opts = new TraceOptions(); TraceDiagnosticObserver obs = new TraceDiagnosticObserver(opts); var ep = new TraceEndpoint(opts, obs); var middle = new TraceEndpointMiddleware(null, ep); Assert.True(middle.RequestVerbAndPathMatch("GET", "/trace")); Assert.False(middle.RequestVerbAndPathMatch("PUT", "/trace")); Assert.False(middle.RequestVerbAndPathMatch("GET", "/badpath")); }
public void TraceEndpointMiddleware_PathAndVerbMatching_ReturnsExpected() { var opts = new TraceEndpointOptions(); var mopts = TestHelpers.GetManagementOptions(opts); TraceDiagnosticObserver obs = new TraceDiagnosticObserver(opts); var ep = new TraceEndpoint(opts, obs); var middle = new TraceEndpointMiddleware(null, ep, mopts); Assert.True(middle.RequestVerbAndPathMatch("GET", "/cloudfoundryapplication/trace")); Assert.False(middle.RequestVerbAndPathMatch("PUT", "/cloudfoundryapplication/trace")); Assert.False(middle.RequestVerbAndPathMatch("GET", "/cloudfoundryapplication/badpath")); }
public async void HandleTraceRequestAsync_ReturnsExpected() { var opts = new TraceOptions(); TraceDiagnosticObserver obs = new TraceDiagnosticObserver(opts); var ep = new TestTraceEndpoint(opts, obs); var middle = new TraceEndpointMiddleware(null, ep); var context = CreateRequest("GET", "/trace"); await middle.HandleTraceRequestAsync(context); context.Response.Body.Seek(0, SeekOrigin.Begin); StreamReader rdr = new StreamReader(context.Response.Body); string json = await rdr.ReadToEndAsync(); Assert.Equal("[]", json); }
public async Task HandleTraceRequestAsync_OtherPathReturnsExpected() { var opts = new TraceEndpointOptions(); var mopts = new CloudFoundryManagementOptions(); mopts.EndpointOptions.Add(opts); var obs = new TraceDiagnosticObserver(opts); var ep = new TestTraceEndpoint(opts, obs); var middle = new TraceEndpointMiddleware(null, ep, mopts); var context = CreateRequest("GET", "/cloudfoundryapplication/trace"); await middle.HandleTraceRequestAsync(context); context.Response.Body.Seek(0, SeekOrigin.Begin); var rdr = new StreamReader(context.Response.Body); var json = await rdr.ReadToEndAsync(); Assert.Equal("[]", json); }
public void IsTraceRequest_ReturnsExpected() { var opts = new TraceOptions(); DiagnosticListener listener = new DiagnosticListener("test"); TraceObserver obs = new TraceObserver(listener, opts); var ep = new TraceEndpoint(opts, obs); var middle = new TraceEndpointMiddleware(null, ep); var context = CreateRequest("GET", "/trace"); Assert.True(middle.IsTraceRequest(context)); var context2 = CreateRequest("PUT", "/trace"); Assert.False(middle.IsTraceRequest(context2)); var context3 = CreateRequest("GET", "/badpath"); Assert.False(middle.IsTraceRequest(context3)); listener.Dispose(); }