public async Task TestSkipsOnOptions(string method, bool shouldBeCalled) { var middleware = new CorsMiddleware(_loggerFactory); var context = new DefaultHttpContext(); var called = false; context.Request.Method = method; context.Response.Body = new MemoryStream(); await middleware.InvokeAsync(context, (ctx) => { called = true; return(Task.CompletedTask); }); Assert.Equal(shouldBeCalled, called); }
public async Task TestCorsHeadersAreSet() { var middleware = new CorsMiddleware(_loggerFactory); var context = new DefaultHttpContext(); context.Response.Body = new MemoryStream(); await middleware.InvokeAsync(context, (ctx) => { var headers = new string[] { "Authorization", "Content-Type", "Accept" }; Assert.Equal("*", GetFirstHeaderValue(ctx.Response.Headers, "Access-Control-Allow-Origin")); Assert.Equal(headers, GetHeaderValues(ctx.Response.Headers, "Access-Control-Allow-Headers")); Assert.Equal("POST", GetFirstHeaderValue(ctx.Response.Headers, "Access-Control-Allow-Methods")); return(Task.CompletedTask); }); }