TestServer
is designed for unit test. It generates an HttpClient
instance that you can inject to your service.
- Install the package by nuget
dotnet add package Dubstep.TestUtilities.TestServer
- Create a
TestServer
instance bynew TestServer()
- Configure
RuleSet
of theTestServer
instance - Generate a HttpClient by
CreateClient()
public async Task ShouldGetResponse {
// Arrange
var server = new TestServer();
var urlPattern = "\\?id=1";
var okResponse = "[1,2,3]";
server.CurrentRuleSet
.AddRule()
.WhenGet()
.WhenUrlMatch(urlPattern)
.SetOkResponse(okResponse);
var client = server.CreateClient();
// Act
var response = await client.GetAsync("/?id=1");
// Assert
response.EnsureSuccessStatusCode();
var message = await response.Content.ReadAsStringAsync();
Assert.AreEqual(okResponse, message);
}
Check the unit test cases for more examples