public void WebhookMapper_Map_Model_BodyAsString_And_UseTransformerIsTrue() { // Assign var model = new WebhookModel { Request = new WebhookRequestModel { Url = "https://localhost", Method = "get", Headers = new Dictionary <string, string> { { "x", "y" } }, Body = "test", UseTransformer = true } }; var result = WebhookMapper.Map(model); result.Request.Url.Should().Be("https://localhost"); result.Request.Method.Should().Be("get"); result.Request.Headers.Should().HaveCount(1); result.Request.BodyData.BodyAsJson.Should().BeNull(); result.Request.BodyData.BodyAsString.Should().Be("test"); result.Request.BodyData.DetectedBodyType.Should().Be(BodyType.String); result.Request.UseTransformer.Should().BeTrue(); result.Request.TransformerType.Should().Be(TransformerType.Handlebars); }
public void WebhookMapper_Map_Model_BodyAsJson() { // Assign var model = new WebhookModel { Request = new WebhookRequestModel { Url = "https://localhost", Method = "get", Headers = new Dictionary <string, string> { { "x", "y" } }, BodyAsJson = new { n = 12345 } } }; var result = WebhookMapper.Map(model); result.Request.Url.Should().Be("https://localhost"); result.Request.Method.Should().Be("get"); result.Request.Headers.Should().HaveCount(1); result.Request.BodyData.BodyAsString.Should().BeNull(); result.Request.BodyData.BodyAsJson.Should().NotBeNull(); result.Request.BodyData.DetectedBodyType.Should().Be(BodyType.Json); }
private Guid?ConvertMappingAndRegisterAsRespondProvider(MappingModel mappingModel, Guid?guid = null, string path = null) { Check.NotNull(mappingModel, nameof(mappingModel)); Check.NotNull(mappingModel.Request, nameof(mappingModel.Request)); Check.NotNull(mappingModel.Response, nameof(mappingModel.Response)); var requestBuilder = InitRequestBuilder(mappingModel.Request, true); if (requestBuilder == null) { return(null); } var responseBuilder = InitResponseBuilder(mappingModel.Response); var respondProvider = Given(requestBuilder, mappingModel.SaveToFile == true); if (guid != null) { respondProvider = respondProvider.WithGuid(guid.Value); } else if (mappingModel.Guid != null && mappingModel.Guid != Guid.Empty) { respondProvider = respondProvider.WithGuid(mappingModel.Guid.Value); } if (path != null) { respondProvider = respondProvider.WithPath(path); } if (!string.IsNullOrEmpty(mappingModel.Title)) { respondProvider = respondProvider.WithTitle(mappingModel.Title); } if (mappingModel.Priority != null) { respondProvider = respondProvider.AtPriority(mappingModel.Priority.Value); } if (mappingModel.Scenario != null) { respondProvider = respondProvider.InScenario(mappingModel.Scenario); respondProvider = respondProvider.WhenStateIs(mappingModel.WhenStateIs); respondProvider = respondProvider.WillSetStateTo(mappingModel.SetStateTo); } if (mappingModel.Webhook?.Request != null) { respondProvider = respondProvider.WithWebhook(WebhookMapper.Map(mappingModel.Webhook)); } respondProvider.RespondWith(responseBuilder); return(respondProvider.Guid); }