Como acessar o HttpContext dentro de um teste de unidade no ASP.NET 5 / MVC 6
Digamos que estou definindo um valor no contexto http no meu middleware. Por exemplo HttpContext.User.
Como posso testar o contexto http no meu teste de unidade. Aqui está um exemplo do que estou tentando fazer
Middleware
public class MyAuthMiddleware
{
private readonly RequestDelegate _next;
public MyAuthMiddleware(RequestDelegate next)
{
_next = next;
}
public async Task Invoke(HttpContext context)
{
context.User = SetUser();
await next(context);
}
}
Teste
[Fact]
public async Task UserShouldBeAuthenticated()
{
var server = TestServer.Create((app) =>
{
app.UseMiddleware<MyAuthMiddleware>();
});
using(server)
{
var response = await server.CreateClient().GetAsync("/");
// After calling the middleware I want to assert that
// the user in the HttpContext was set correctly
// but how can I access the HttpContext here?
}
}