Пример #1
0
        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");
        }
Пример #2
0
        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");
        }
Пример #6
0
        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();
        }