public void ToMappingModel_With_SingleWebHook()
        {
            // Assign
            var request  = Request.Create();
            var response = Response.Create();
            var webhooks = new IWebhook[]
            {
                new Webhook
                {
                    Request = new WebhookRequest
                    {
                        Url     = "https://test.com",
                        Headers = new Dictionary <string, WireMockList <string> >
                        {
                            { "Single", new WireMockList <string>("x") },
                            { "Multi", new WireMockList <string>("a", "b") }
                        },
                        Method   = "post",
                        BodyData = new BodyData
                        {
                            BodyAsString     = "b",
                            DetectedBodyType = BodyType.String,
                            DetectedBodyTypeFromContentType = BodyType.String
                        }
                    }
                }
            };
            var mapping = new Mapping(Guid.NewGuid(), "", null, _settings, request, response, 0, null, null, null, null, webhooks);

            // Act
            var model = _sut.ToMappingModel(mapping);

            // Assert
            model.Should().NotBeNull();
            model.Priority.Should().BeNull();

            model.Response.BodyAsJsonIndented.Should().BeNull();
            model.Response.UseTransformer.Should().BeNull();
            model.Response.Headers.Should().BeNull();

            model.Webhooks.Should().BeNull();

            model.Webhook.Request.Method.Should().Be("post");
            model.Webhook.Request.Url.Should().Be("https://test.com");
            model.Webhook.Request.Headers.Should().HaveCount(2);
            model.Webhook.Request.Body.Should().Be("b");
            model.Webhook.Request.BodyAsJson.Should().BeNull();
        }
Пример #2
0
        public void ToMappingModel()
        {
            // Assign
            var request  = Request.Create();
            var response = Response.Create();
            var mapping  = new Mapping(Guid.NewGuid(), "", null, _settingsMock.Object, request, response, 0, null, null, null);

            // Act
            var model = _sut.ToMappingModel(mapping);

            // Assert
            model.Should().NotBeNull();
            model.Priority.Should().BeNull();
            model.Response.BodyAsJsonIndented.Should().BeNull();
            model.Response.UseTransformer.Should().BeNull();
        }
        private ResponseMessage MappingsGet(RequestMessage requestMessage)
        {
            var result = new List <MappingModel>();

            foreach (var mapping in Mappings.Where(m => !m.IsAdminInterface))
            {
                var model = MappingConverter.ToMappingModel(mapping);
                result.Add(model);
            }

            return(ToJson(result));
        }
Пример #4
0
        public void MappingConverter_ToMappingModel()
        {
            // Assign
            var request  = Request.Create();
            var response = Response.Create();
            var mapping  = new Mapping(Guid.NewGuid(), "", null, request, response, 0, null, null, null);

            // Act
            var model = MappingConverter.ToMappingModel(mapping);

            // Assert
            Check.That(model).IsNotNull();
        }
        private ResponseMessage MappingGet(RequestMessage requestMessage)
        {
            Guid guid    = Guid.Parse(requestMessage.Path.Substring(AdminMappings.Length + 1));
            var  mapping = Mappings.FirstOrDefault(m => !m.IsAdminInterface && m.Guid == guid);

            if (mapping == null)
            {
                _logger.Warn("HttpStatusCode set to 404 : Mapping not found");
                return(ResponseMessageBuilder.Create("Mapping not found", 404));
            }

            var model = MappingConverter.ToMappingModel(mapping);

            return(ToJson(model));
        }
Пример #6
0
        public void ToMappingModel_WithPriority_ReturnsPriority()
        {
            // Assign
            var request  = Request.Create();
            var response = Response.Create().WithBodyAsJson(new { x = "x" }).WithTransformer();
            var mapping  = new Mapping(Guid.NewGuid(), "", null, _fileSystemHandlerMock.Object, request, response, 42, null, null, null);

            // Act
            var model = MappingConverter.ToMappingModel(mapping);

            // Assert
            model.Should().NotBeNull();
            model.Priority.Should().Be(42);
            model.Response.UseTransformer.Should().BeTrue();
        }
        private void SaveMappingToFile(Mapping mapping)
        {
            string folder = Path.Combine(Directory.GetCurrentDirectory(), AdminMappingsFolder);

            if (!Directory.Exists(folder))
            {
                Directory.CreateDirectory(folder);
            }

            var    model    = MappingConverter.ToMappingModel(mapping);
            string json     = JsonConvert.SerializeObject(model, _settings);
            string filename = !string.IsNullOrEmpty(mapping.Title) ? SanitizeFileName(mapping.Title) : mapping.Guid.ToString();

            File.WriteAllText(Path.Combine(folder, filename + ".json"), json);
        }
        private ResponseMessage MappingGet(RequestMessage requestMessage)
        {
            Guid guid    = Guid.Parse(requestMessage.Path.Substring(AdminMappings.Length + 1));
            var  mapping = Mappings.FirstOrDefault(m => !m.IsAdminInterface && m.Guid == guid);

            if (mapping == null)
            {
                return new ResponseMessage {
                           StatusCode = 404, Body = "Mapping not found"
                }
            }
            ;

            var model = MappingConverter.ToMappingModel(mapping);

            return(ToJson(model));
        }
Пример #9
0
        private void SaveMappingToFile(IMapping mapping, string folder = null)
        {
            if (folder == null)
            {
                folder = _fileSystemHandler.GetMappingFolder();
            }

            if (!_fileSystemHandler.FolderExists(folder))
            {
                _fileSystemHandler.CreateFolder(folder);
            }

            var    model    = MappingConverter.ToMappingModel(mapping);
            string filename = (!string.IsNullOrEmpty(mapping.Title) ? SanitizeFileName(mapping.Title) : mapping.Guid.ToString()) + ".json";

            string path = Path.Combine(folder, filename);

            _logger.Info("Saving Mapping file {0}", filename);

            _fileSystemHandler.WriteMappingFile(path, JsonConvert.SerializeObject(model, _settings));
        }
Пример #10
0
        private void SaveMappingToFile(Mapping mapping, [CanBeNull] string folder = null)
        {
            if (folder == null)
            {
                folder = Path.Combine(Directory.GetCurrentDirectory(), AdminMappingsFolder);
            }

            if (!Directory.Exists(folder))
            {
                Directory.CreateDirectory(folder);
            }

            var    model    = MappingConverter.ToMappingModel(mapping);
            string filename = !string.IsNullOrEmpty(mapping.Title) ? SanitizeFileName(mapping.Title) : mapping.Guid.ToString();

            string filePath = Path.Combine(folder, filename + ".json");

            _logger.Info("Saving Mapping to file {0}", filePath);

            File.WriteAllText(filePath, JsonConvert.SerializeObject(model, _settings));
        }