skwas.MockHttp.Server
3.1.0-rc0002
See the version list below for details.
dotnet add package skwas.MockHttp.Server --version 3.1.0-rc0002
NuGet\Install-Package skwas.MockHttp.Server -Version 3.1.0-rc0002
<PackageReference Include="skwas.MockHttp.Server" Version="3.1.0-rc0002" />
<PackageVersion Include="skwas.MockHttp.Server" Version="3.1.0-rc0002" />
<PackageReference Include="skwas.MockHttp.Server" />
paket add skwas.MockHttp.Server --version 3.1.0-rc0002
#r "nuget: skwas.MockHttp.Server, 3.1.0-rc0002"
#:package skwas.MockHttp.Server@3.1.0-rc0002
#addin nuget:?package=skwas.MockHttp.Server&version=3.1.0-rc0002&prerelease
#tool nuget:?package=skwas.MockHttp.Server&version=3.1.0-rc0002&prerelease
.NET library to mock/stub HTTP responses and verify request expectations with an experience inspired by Moq.
Documentation
Please see the wiki for documentation.
Usage example
// Create the mock handler.
MockHttpHandler mockHttp = new MockHttpHandler();
// Configure setup(s).
mockHttp
.When(matching => matching.Method("GET"))
.Respond(with => with
.StatusCode(200)
.JsonBody("<b>Hello world</b>")
.ContentType("text/html")
)
.Verifiable();
// Mount the mock handler in a server.
// Specify port 0 to bind to a free port, or otherwise provide an unused/free port.
MockHttpServer server = new MockHttpServer(mockHttp, "http://127.0.0.1:0");
await server.StartAsync();
// Configure the subject under test to use the same host and port.
// For sake of example, we're using WebRequest here.
// Act
var request = WebRequest.Create($"{server.HostUrl}/controller/action");
request.Method = "GET";
// Assert
HttpWebResponse response = (HttpWebResponse)await request.GetResponseAsync();
response.StatusCode.Should().Be(HttpStatusCode.OK);
// Verify the request expectation as configured on the mock handler.
mockHttp.Verify();
// Clean up
await server.StopAsync();
server.Dispose()
Contributions
Please check out the contribution guidelines.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 is compatible. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp3.1 is compatible. |
-
.NETCoreApp 3.1
- skwas.MockHttp (>= 3.1.0-rc0002)
-
net5.0
- skwas.MockHttp (>= 3.1.0-rc0002)
-
net6.0
- skwas.MockHttp (>= 3.1.0-rc0002)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 4.6.0 | 223 | 10/8/2025 |
| 4.5.0 | 5,243 | 10/2/2024 |
| 4.4.0 | 768 | 9/10/2024 |
| 4.3.1 | 11,961 | 1/31/2024 |
| 4.3.0 | 407 | 12/24/2023 |
| 4.2.0 | 1,470 | 11/18/2023 |
| 4.1.1 | 799 | 8/13/2023 |
| 4.1.0 | 258 | 8/12/2023 |
| 4.0.1 | 1,344 | 3/25/2023 |
| 4.0.0 | 1,455 | 1/3/2023 |
| 3.1.0-rc0002 | 315 | 7/15/2022 |
| 3.1.0-rc0001 | 299 | 7/9/2022 |
| 3.0.1 | 22,036 | 1/15/2022 |
| 3.0.0 | 484 | 12/24/2021 |
| 3.0.0-rc0002 | 333 | 12/24/2021 |
| 3.0.0-rc0001 | 471 | 11/22/2021 |
| 2.4.0 | 4,149 | 2/19/2021 |
| 2.3.0 | 4,132 | 11/28/2020 |
| 2.2.1 | 1,634 | 1/17/2020 |
v3.1.0-alpha1
- Added new fluent response API which provides more flexibility and control over the response. This new API replaces the current `.Respond()` API, and as such most of the old methods/overloads are now deprecated and will be removed in v4.
- Added `RateLimitedStream` helper to simulate network transfer rates.