From 9b323ab3887763fd9583a0720c829000221307cd Mon Sep 17 00:00:00 2001 From: Stef Heyenrath Date: Tue, 19 Nov 2019 18:54:28 +0100 Subject: [PATCH] example --- WireMock.Net Solution.sln | 11 +++- .../Program.cs | 63 +++++++++++++++++++ ...WireMock.Net.Console.RequestLogTest.csproj | 13 ++++ .../ResponseBuilders/IFaultRequestBuilder.cs | 2 +- 4 files changed, 86 insertions(+), 3 deletions(-) create mode 100644 examples/WireMock.Net.Console.RequestLogTest/Program.cs create mode 100644 examples/WireMock.Net.Console.RequestLogTest/WireMock.Net.Console.RequestLogTest.csproj diff --git a/WireMock.Net Solution.sln b/WireMock.Net Solution.sln index 78bd76fe..8750305e 100644 --- a/WireMock.Net Solution.sln +++ b/WireMock.Net Solution.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 15 -VisualStudioVersion = 15.0.27130.2036 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.29512.175 MinimumVisualStudioVersion = 10.0.40219.1 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{EF242EDF-7133-4277-9A0C-18744DE08707}" EndProject @@ -61,6 +61,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WireMock.Net.Console.Net452 EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WireMock.Net.Console.NETCoreApp2", "examples\WireMock.Net.Console.NETCoreApp2\WireMock.Net.Console.NETCoreApp2.csproj", "{83645809-9E01-4E81-8733-BA9497554ABF}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WireMock.Net.Console.RequestLogTest", "examples\WireMock.Net.Console.RequestLogTest\WireMock.Net.Console.RequestLogTest.csproj", "{A9D039B9-7509-4CF1-9EFD-87EB82998575}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -131,6 +133,10 @@ Global {83645809-9E01-4E81-8733-BA9497554ABF}.Debug|Any CPU.Build.0 = Debug|Any CPU {83645809-9E01-4E81-8733-BA9497554ABF}.Release|Any CPU.ActiveCfg = Release|Any CPU {83645809-9E01-4E81-8733-BA9497554ABF}.Release|Any CPU.Build.0 = Release|Any CPU + {A9D039B9-7509-4CF1-9EFD-87EB82998575}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A9D039B9-7509-4CF1-9EFD-87EB82998575}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A9D039B9-7509-4CF1-9EFD-87EB82998575}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A9D039B9-7509-4CF1-9EFD-87EB82998575}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -152,6 +158,7 @@ Global {1261BB9B-A7D4-456C-8985-3CE560361B8E} = {F0C22C47-DF71-463C-9B04-B4E0F3B8708A} {668F689E-57B4-422E-8846-C0FF643CA268} = {F0C22C47-DF71-463C-9B04-B4E0F3B8708A} {83645809-9E01-4E81-8733-BA9497554ABF} = {F0C22C47-DF71-463C-9B04-B4E0F3B8708A} + {A9D039B9-7509-4CF1-9EFD-87EB82998575} = {F0C22C47-DF71-463C-9B04-B4E0F3B8708A} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {BF428BCC-C837-433B-87D2-15C7014B73E9} diff --git a/examples/WireMock.Net.Console.RequestLogTest/Program.cs b/examples/WireMock.Net.Console.RequestLogTest/Program.cs new file mode 100644 index 00000000..891f4af7 --- /dev/null +++ b/examples/WireMock.Net.Console.RequestLogTest/Program.cs @@ -0,0 +1,63 @@ +using System; +using System.Linq; +using System.Net.Http; +using System.Threading.Tasks; +using WireMock.Logging; +using WireMock.Net.StandAlone; +using WireMock.RequestBuilders; +using WireMock.ResponseBuilders; +using WireMock.Settings; + +namespace WireMock.Net.Console.RequestLogTest +{ + class Program + { + static async Task Main(string[] args) + { + var server = StandAloneApp.Start(new FluentMockServerSettings + { + Port = 19019, + StartAdminInterface = true, + StartTimeout = 1000, + MaxRequestLogCount = 100, + RequestLogExpirationDuration = 6, + Logger = new WireMockConsoleLogger() + }); + + server + .Given(Request + .Create() + .UsingGet()) + .RespondWith(Response.Create() + .WithHeader("Content-Type", "application/json") + .WithBodyAsJson(new { result = "x" })); + + await Task.Delay(2000); + + var client = new HttpClient(); + client.BaseAddress = new Uri(server.Urls[0]); + + var options = new ParallelOptions() + { + MaxDegreeOfParallelism = 2 + }; + + var list = Enumerable.Range(1, 1000); + Parallel.ForEach(list, options, async i => + { + string result = await client.GetStringAsync("/x"); + System.Console.WriteLine(result); + }); + + //for (int i = 0; i < 1000; i++) + //{ + // string result = await client.GetStringAsync("/x"); + // System.Console.WriteLine(result); + //} + + System.Console.WriteLine("Press any key to stop the server"); + System.Console.ReadKey(); + server.Stop(); + } + } +} \ No newline at end of file diff --git a/examples/WireMock.Net.Console.RequestLogTest/WireMock.Net.Console.RequestLogTest.csproj b/examples/WireMock.Net.Console.RequestLogTest/WireMock.Net.Console.RequestLogTest.csproj new file mode 100644 index 00000000..c1108605 --- /dev/null +++ b/examples/WireMock.Net.Console.RequestLogTest/WireMock.Net.Console.RequestLogTest.csproj @@ -0,0 +1,13 @@ + + + + Exe + netcoreapp2.2 + + + + + + + + \ No newline at end of file diff --git a/src/WireMock.Net/ResponseBuilders/IFaultRequestBuilder.cs b/src/WireMock.Net/ResponseBuilders/IFaultRequestBuilder.cs index 954d69fe..a0ef3113 100644 --- a/src/WireMock.Net/ResponseBuilders/IFaultRequestBuilder.cs +++ b/src/WireMock.Net/ResponseBuilders/IFaultRequestBuilder.cs @@ -11,7 +11,7 @@ namespace WireMock.ResponseBuilders /// WithBody : Create a fault response. /// /// The FaultType. - /// The percentage when this fault should occur. When null, it's always. + /// The percentage when this fault should occur. When null, it's always a fault. /// A . IResponseBuilder WithFault(FaultType faultType, [CanBeNull] double? percentage = null); }