I have an API that uses IdentityServer4 for token validation. I want to unit test this API with an in-memory TestServer. I\'d like to host the IdentityServer in the in-memor
The trick is to create a handler using the TestServer
that is configured to use IdentityServer4
. Samples can be found here.
I created a nuget-package available to install and test using the Microsoft.AspNetCore.Mvc.Testing library and the latest version of IdentityServer4
for this purpose.
It encapsulates all the infrastructure code necessary to build an appropriate WebHostBuilder
which is then used to create a TestServer
by generating the HttpMessageHandler
for the HttpClient
used internally.