mirror of
https://github.com/wiremock/WireMock.Net.git
synced 2026-01-14 22:33:35 +01:00
60 lines
2.0 KiB
C#
60 lines
2.0 KiB
C#
using System.IO;
|
|
using System.Reflection;
|
|
using log4net;
|
|
using log4net.Config;
|
|
using log4net.Repository;
|
|
using Newtonsoft.Json;
|
|
using WireMock.Logging;
|
|
using WireMock.RequestBuilders;
|
|
using WireMock.ResponseBuilders;
|
|
using WireMock.Server;
|
|
using WireMock.Settings;
|
|
|
|
namespace WireMock.Net.Console.NETCoreApp
|
|
{
|
|
static class Program
|
|
{
|
|
private static readonly ILoggerRepository LogRepository = LogManager.GetRepository(Assembly.GetEntryAssembly());
|
|
private static readonly ILog Log = LogManager.GetLogger(typeof(Program));
|
|
|
|
static void Main(params string[] args)
|
|
{
|
|
XmlConfigurator.Configure(LogRepository, new FileInfo("log4net.config"));
|
|
|
|
string url = "http://localhost:9999/";
|
|
|
|
var server = FluentMockServer.Start(new FluentMockServerSettings
|
|
{
|
|
Urls = new[] { url },
|
|
StartAdminInterface = true,
|
|
Logger = new WireMockConsoleLogger()
|
|
});
|
|
System.Console.WriteLine("FluentMockServer listening at {0}", string.Join(",", server.Urls));
|
|
|
|
server.SetBasicAuthentication("a", "b");
|
|
|
|
server.AllowPartialMapping();
|
|
|
|
server
|
|
.Given(Request.Create()
|
|
.UsingGet()
|
|
.WithHeader("Keep-Alive-Test", "stef")
|
|
)
|
|
.RespondWith(Response.Create()
|
|
.WithHeader("Keep-Alive", "timeout=1, max=1")
|
|
.WithBody("Keep-Alive OK")
|
|
);
|
|
|
|
System.Console.WriteLine("Press any key to stop the server");
|
|
System.Console.ReadKey();
|
|
server.Stop();
|
|
|
|
System.Console.WriteLine("Displaying all requests");
|
|
var allRequests = server.LogEntries;
|
|
System.Console.WriteLine(JsonConvert.SerializeObject(allRequests, Formatting.Indented));
|
|
|
|
System.Console.WriteLine("Press any key to quit");
|
|
System.Console.ReadKey();
|
|
}
|
|
}
|
|
} |