mirror of
https://github.com/wiremock/WireMock.Net.git
synced 2026-02-27 11:07:42 +01:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9b09a0ae00 | ||
|
|
ad040fb63c | ||
|
|
9210957e55 |
@@ -72,7 +72,6 @@
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup Condition=" '$(TargetFramework)' != 'netstandard1.3' ">
|
||||
<PackageReference Include="XPath2.Extensions" Version="1.1.4" />
|
||||
<PackageReference Include="Microsoft.IdentityModel.Protocols.OpenIdConnect" Version="6.34.0" />
|
||||
</ItemGroup>
|
||||
|
||||
@@ -182,13 +181,13 @@
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Handlebars.Net.Helpers" Version="2.4.1.4" />
|
||||
<PackageReference Include="Handlebars.Net.Helpers.DynamicLinq" Version="2.4.1.4" />
|
||||
<PackageReference Include="Handlebars.Net.Helpers.Humanizer" Version="2.4.1.4" />
|
||||
<PackageReference Include="Handlebars.Net.Helpers.Json" Version="2.4.1.4" />
|
||||
<PackageReference Include="Handlebars.Net.Helpers.Random" Version="2.4.1.4" />
|
||||
<PackageReference Include="Handlebars.Net.Helpers.XPath" Version="2.4.1.4" />
|
||||
<PackageReference Include="Handlebars.Net.Helpers.Xeger" Version="2.4.1.4" />
|
||||
<PackageReference Include="Handlebars.Net.Helpers" Version="2.4.2.1" />
|
||||
<PackageReference Include="Handlebars.Net.Helpers.DynamicLinq" Version="2.4.2.1" />
|
||||
<PackageReference Include="Handlebars.Net.Helpers.Humanizer" Version="2.4.2.1" />
|
||||
<PackageReference Include="Handlebars.Net.Helpers.Json" Version="2.4.2.1" />
|
||||
<PackageReference Include="Handlebars.Net.Helpers.Random" Version="2.4.2.1" />
|
||||
<PackageReference Include="Handlebars.Net.Helpers.XPath" Version="2.4.2.1" />
|
||||
<PackageReference Include="Handlebars.Net.Helpers.Xeger" Version="2.4.2.1" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
||||
@@ -967,4 +967,44 @@ public class WireMockServerProxyTests
|
||||
|
||||
server.Dispose();
|
||||
}
|
||||
|
||||
// #1097
|
||||
// https://stackoverflow.com/questions/52106567/how-to-stop-httprequestmessage-from-unencoding-3a-to-a-colon-in-the-request-uri
|
||||
[Fact]
|
||||
public async Task WireMockServer_Proxy_Should_Keep_UrlEncoding()
|
||||
{
|
||||
// Assign
|
||||
string path = $"/prx_{Guid.NewGuid()}";
|
||||
var serverForProxyForwarding = WireMockServer.Start();
|
||||
serverForProxyForwarding
|
||||
.Given(Request.Create().WithPath(path))
|
||||
.RespondWith(Response.Create());
|
||||
|
||||
var settings = new WireMockServerSettings
|
||||
{
|
||||
ProxyAndRecordSettings = new ProxyAndRecordSettings
|
||||
{
|
||||
Url = serverForProxyForwarding.Urls[0],
|
||||
SaveMapping = true,
|
||||
SaveMappingToFile = false
|
||||
}
|
||||
};
|
||||
var server = WireMockServer.Start(settings);
|
||||
|
||||
// Act
|
||||
var requestUri = $"{server.Urls[0]}{path}with%20space_and_%3A_colon";
|
||||
var requestMessage = new HttpRequestMessage
|
||||
{
|
||||
Method = HttpMethod.Get,
|
||||
RequestUri = new Uri(requestUri)
|
||||
};
|
||||
await new HttpClient().SendAsync(requestMessage).ConfigureAwait(false);
|
||||
|
||||
// Assert
|
||||
var receivedRequest = serverForProxyForwarding.LogEntries.First().RequestMessage;
|
||||
receivedRequest.AbsolutePath.Should().EndWith("with space_and_:_colon");
|
||||
|
||||
// check that new proxied mapping is added
|
||||
server.Mappings.Should().HaveCount(2);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user