Skip to content

.NET library to mock HTTP responses for any HTTP client and verify request expectations with an experience inspired by Moq.

License

Notifications You must be signed in to change notification settings

skwasjer/MockHttp

Repository files navigation

MockHttp

Collection of .NET libraries to mock HTTP responses for any HTTP client (HttpClient, WebRequest, RestClient, etc.) and verify request expectations with an experience inspired by Moq.


Main workflow Quality Gate Status Coverage

skwas.MockHttp NuGet NuGet Documentation
skwas.MockHttp.Json NuGet NuGet Documentation
skwas.MockHttp.Server NuGet NuGet Documentation

Documentation

Please see the wiki for documentation.

Usage example

MockHttpHandler mockHttp = new MockHttpHandler();

// Configure setup(s).
mockHttp
    .When(matching => matching
        .Method("GET")
        .RequestUri("http://localhost/controller/*")
    )
    .Respond(with => with
        .StatusCode(200)
        .JsonBody(new { id = 123, firstName = "John", lastName = "Doe" })
    )
    .Verifiable();

var client = new HttpClient(mockHttp);

var response = await client.GetAsync("http://localhost/controller/action?test=1");

// Verify expectations.
mockHttp.Verify();

Contributions

Please check out the contribution guidelines.

Other info

While this library was inspired by Moq - it does not and will not include SponsorLink. I have no direct relation to Moq or its author.

About

.NET library to mock HTTP responses for any HTTP client and verify request expectations with an experience inspired by Moq.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages