public void Create() { RequestActivityEventSource.Log.Listen(listener => { // arrange const string method = "PUT"; Uri uri = new Uri("http://127.0.0.1/api/events"); // act using (ServerRequestActivity.Create(method, uri, null)) { // do nothing here } // assert Assert.Collection(listener.OrderedEvents, e => { Assert.Equal("Request {2} {3}", e.Message); Assert.Equal(method, e.Payload[2]); Assert.Equal(uri.ToString(), e.Payload[3]); }, e => { Assert.Equal("Response {3} {4}", e.Message); Assert.Equal(0, e.Payload[3]); Assert.Equal("UNKNOWN", e.Payload[4]); }); }); }
public void Create_OuterActivity() { RequestActivityEventSource.Log.Listen(listener => { // arrange const string method = "GET"; Uri uri = new Uri("http://127.0.0.1/api/events"); // act using (Activity.Create("Outer activity")) { using (ServerRequestActivity.Create(method, uri, null)) { // do nothing here } } // assert Assert.Collection(listener.OrderedEvents, e => Assert.Equal("Outer activities are not allowed when creating a server-side message activity.", e.Message), e => { Assert.Equal("Request {2} {3}", e.Message); Assert.Equal(method, e.Payload[2]); Assert.Equal(uri.ToString(), e.Payload[3]); }, e => { Assert.Equal("Response {3} {4}", e.Message); Assert.Equal(0, e.Payload[3]); Assert.Equal("UNKNOWN", e.Payload[4]); }); }); }
public void SetResponse() { RequestActivityEventSource.Log.Listen(listener => { // arrange const string method = "GET"; Uri uri = new Uri("http://127.0.0.1/api/events"); const int statusCode = 200; Guid userId = Guid.NewGuid(); // act using (ServerRequestActivity activity = ServerRequestActivity.Create(method, uri, null)) { activity.SetResponse(statusCode, userId); } // assert Assert.Collection(listener.OrderedEvents, e => { Assert.Equal("Request {2} {3}", e.Message); Assert.Equal(method, e.Payload[2]); Assert.Equal(uri.ToString(), e.Payload[3]); }, e => { Assert.Equal("Response {3} {4}", e.Message); Assert.Equal(userId, e.Payload[2]); Assert.Equal(statusCode, e.Payload[3]); Assert.Equal("OK", e.Payload[4]); }); }); }
public void Create_HttpRequest() { RequestActivityEventSource.Log.Listen(listener => { // arrange HttpRequest request = new HttpRequest { Method = "PUT", Uri = "http://127.0.0.1/api/events" }; // act using (ServerRequestActivity.Create(request, null)) { // do nothing here } // assert Assert.Collection(listener.OrderedEvents, e => { Assert.Equal("Request {2} {3}", e.Message); Assert.Equal(request.Method, e.Payload[2]); Assert.Equal(request.Uri, e.Payload[3]); }, e => { Assert.Equal("Response {3} {4}", e.Message); Assert.Equal(0, e.Payload[3]); Assert.Equal("UNKNOWN", e.Payload[4]); }); }); }
public void HandleException() { RequestActivityEventSource.Log.Listen(listener => { // arrange const string method = "PUT"; Uri uri = new Uri("http://127.0.0.1/api/events"); Exception exception = new Exception(); // act using (ServerRequestActivity activity = ServerRequestActivity.Create(method, uri, null)) { activity.HandleException(exception); } // assert Assert.Collection(listener.OrderedEvents, e => { Assert.Equal("Request {2} {3}", e.Message); Assert.Equal(method, e.Payload[2]); Assert.Equal(uri.ToString(), e.Payload[3]); }, e => Assert.Equal("Internal server error occurred.", e.Message), e => { Assert.Equal("Response {3} {4}", e.Message); Assert.Equal(0, e.Payload[3]); Assert.Equal("UNKNOWN", e.Payload[4]); }); }); }
public void OnHttpRequestInStart(HttpContext httpContext) { Uri requestUri = new Uri(httpContext.Request.GetDisplayUrl()); ServerRequestActivity activity = ServerRequestActivity.Create(httpContext.Request.Method, requestUri, httpContext.Request.GetActivityId()); httpContext.Features.Set(activity); }
public void OnHttpRequestInStop(HttpContext httpContext) { ServerRequestActivity activity = httpContext.Features.Get <ServerRequestActivity>(); if (activity != null) { activity.SetResponse(httpContext.Response.StatusCode, httpContext.User.GetId()); activity.Dispose(); } }
public void Create_HttpRequest_RequestNull() { // arrange HttpRequest request = null; // act Action verify = () => ServerRequestActivity.Create(request, null); // assert Assert.Throws <ArgumentNullException>("request", verify); }
public void Create_UriNull() { // arrange const string method = "GET"; Uri uri = null; // act Action verify = () => ServerRequestActivity.Create(method, uri, null); // assert Assert.Throws <ArgumentNullException>("uri", verify); }
public void Create_MethodNull() { // arrange const string method = null; Uri uri = new Uri("http://127.0.0.1/api/events"); // act Action verify = () => ServerRequestActivity.Create(method, uri, null); // assert Assert.Throws <ArgumentNullException>("method", verify); }
public void SetResponse_HttpResponse_ResponseNull() { // arrange const string method = "POST"; Uri uri = new Uri("http://127.0.0.1/api/events"); HttpResponse response = null; ServerRequestActivity activity = ServerRequestActivity.Create(method, uri, null); // act Action verify = () => activity.SetResponse(response); // assert Assert.Throws <ArgumentNullException>("response", verify); }
public void HandleException_ExceptionNull() { // arrange const string method = "GET"; Uri uri = new Uri("http://127.0.0.1/api/events"); Exception exception = null; ServerRequestActivity activity = ServerRequestActivity.Create(method, uri, null); // act Action verify = () => activity.HandleException(exception); // assert Assert.Throws <ArgumentNullException>("exception", verify); }
public void Create_HttpRequest_ParentActivity() { RequestActivityEventSource.Log.Listen(listener => { // arrange HttpRequest request = new HttpRequest { Method = "GET", Uri = "http://127.0.0.1/api/events" }; Guid parentId = Guid.NewGuid(); // act using (ServerRequestActivity.Create(request, parentId)) { // do nothing here } // assert Assert.Collection(listener.OrderedEvents, e => Assert.Equal("Begin activity transfer", e.Message), e => { Assert.Equal("Request {2} {3}", e.Message); Assert.Equal(request.Method, e.Payload[2]); Assert.Equal(request.Uri, e.Payload[3]); }, e => Assert.Equal("End activity transfer", e.Message), e => { Assert.Equal("Response {3} {4}", e.Message); Assert.Equal(0, e.Payload[3]); Assert.Equal("UNKNOWN", e.Payload[4]); }); }); }