public async Task WireMockServer_Should_AcceptPostMappingsWithContentTypeJsonAndAnyCharset(string contentType) { // Arrange string message = @"{ ""request"": { ""method"": ""GET"", ""url"": ""/some/thing"" }, ""response"": { ""status"": 200, ""body"": ""Hello world!"", ""headers"": { ""Content-Type"": ""text/plain"" } } }"; var stringContent = new StringContent(message); stringContent.Headers.ContentType = MediaTypeHeaderValue.Parse(contentType); var server = FluentMockServer.StartWithAdminInterface(); // Act var response = await new HttpClient().PostAsync($"{server.Urls[0]}/__admin/mappings", stringContent); // Assert Check.That(response.StatusCode).Equals(HttpStatusCode.Created); Check.That(await response.Content.ReadAsStringAsync()).Contains("Mapping added"); }
public async Task Client_IFluentMockServerAdmin_PostMappingAsync() { // Assign var server = FluentMockServer.StartWithAdminInterface(); var api = RestClient.For <IFluentMockServerAdmin>(server.Urls[0]); // Act var model = new MappingModel { Request = new RequestModel { Path = "/1" }, Response = new ResponseModel { Body = "txt", StatusCode = 200 }, Priority = 500, Title = "test" }; string result = await api.PostMappingAsync(model); // Assert Check.That(result).IsNotNull(); var mapping = server.Mappings.Single(m => m.Priority == 500); Check.That(mapping).IsNotNull(); Check.That(mapping.Title).Equals("test"); server.Stop(); }
public async Task IFluentMockServerAdmin_PutMappingAsync() { // Arrange var server = FluentMockServer.StartWithAdminInterface(); var api = RestClient.For <IFluentMockServerAdmin>(server.Urls[0]); // Act var model = new MappingModel { Request = new RequestModel { Path = "/1" }, Response = new ResponseModel { Body = "txt", StatusCode = 200 }, Priority = 500, Title = "test" }; var result = await api.PutMappingAsync(new Guid("a0000000-0000-0000-0000-000000000000"), model); // Assert Check.That(result).IsNotNull(); Check.That(result.Status).Equals("Mapping added or updated"); Check.That(result.Guid).IsNotNull(); var mapping = server.Mappings.Single(m => m.Priority == 500); Check.That(mapping).IsNotNull(); Check.That(mapping.Title).Equals("test"); server.Stop(); }
public async Task IFluentMockServerAdmin_GetSettingsAsync() { // Assign var server = FluentMockServer.StartWithAdminInterface(); var api = RestClient.For <IFluentMockServerAdmin>(server.Urls[0]); // Act var settings = await api.GetSettingsAsync(); Check.That(settings).IsNotNull(); }
public async Task IFluentMockServerAdmin_PutSettingsAsync() { // Assign var server = FluentMockServer.StartWithAdminInterface(); var api = RestClient.For <IFluentMockServerAdmin>(server.Urls[0]); // Act var settings = new SettingsModel(); var status = await api.PutSettingsAsync(settings); Check.That(status.Status).Equals("Settings updated"); }
public async Task IFluentMockServerAdmin_PostMappingsAsync() { // Arrange var server = FluentMockServer.StartWithAdminInterface(); var api = RestClient.For <IFluentMockServerAdmin>(server.Urls[0]); // Act var model1 = new MappingModel { Request = new RequestModel { Path = "/1" }, Response = new ResponseModel { Body = "txt 1" }, Title = "test 1" }; var model2 = new MappingModel { Request = new RequestModel { Path = "/2" }, Response = new ResponseModel { Body = "txt 2" }, Title = "test 2" }; var result = await api.PostMappingsAsync(new[] { model1, model2 }); // Assert Check.That(result).IsNotNull(); Check.That(result.Status).IsNotNull(); Check.That(result.Guid).IsNull(); Check.That(server.Mappings.Where(m => !m.IsAdminInterface)).HasSize(2); server.Stop(); }