public WarewolfWebRequestForwarder(IHttpClientFactory httpClientFactory, IPublisher publisher, string url, string username, string password, ICollection <IServiceInputBase> valueKeys, bool mapEntireMessage) { _httpClientFactory = httpClientFactory; _publisher = publisher; _url = url; _username = username; _password = password; _valueKeys = valueKeys; _messageToInputsMapper = new MessageToInputsMapper(); _mapEntireMessage = mapEntireMessage; }
public void MessageToInputsMapper_NoInputs_ShouldReturnTrue() { //-----------------------------Arrange------------------------------ const string message = "<Root><FirstName>Bob</FirstName><Surname>The Builder</Surname></Root>"; var inputs = new List <(string name, string value)>(); var messageToInputsMapper = new MessageToInputsMapper(); var expectedString = "{}"; //-----------------------------Act---------------------------------- var mappedData = messageToInputsMapper.Map(message, inputs, false, true, false); //-----------------------------Assert------------------------------- Assert.AreEqual(expectedString, mappedData); }
public void MessageToInputsMapper_JsonMessage_WithExactProperties_ShouldMap() { //-----------------------------Arrange------------------------------ const string message = "{\"FirstName\":\"Bob\",\"Surname\":\"The Builder\"}"; var inputs = new List <(string name, string value)> { (name : "FirstName", value : "FirstName"), (name : "Surname", value : "Surname") }; var messageToInputsMapper = new MessageToInputsMapper(); //-----------------------------Act---------------------------------- var mappedData = messageToInputsMapper.Map(message, inputs, true, false, false); //-----------------------------Assert------------------------------- Assert.AreEqual(message, mappedData); }
public void MessageToInputsMapper_WhenMapWholeMessage_ShouldSetWholeMessageToVariable() { //-----------------------------Arrange------------------------------ const string message = "<Root><FirstName>Bob</FirstName><Surname>The Builder</Surname></Root>"; var inputs = new List <(string name, string value)> { (name : "msg", value : ""), }; var messageToInputsMapper = new MessageToInputsMapper(); var expectedString = "{\"msg\":\"" + message + "\"}"; //-----------------------------Act---------------------------------- var mappedData = messageToInputsMapper.Map(message, inputs, false, true, true); //-----------------------------Assert------------------------------- Assert.AreEqual(expectedString, mappedData); }
public void MessageToInputsMapper_XMLMessage_WithMappableProperties_ShouldMap() { //-----------------------------Arrange------------------------------ const string message = "<Root><FirstName>Bob</FirstName><Surname>The Builder</Surname></Root>"; var inputs = new List <(string name, string value)> { (name : "Name", value : "FirstName"), (name : "LastName", value : "Surname") }; var messageToInputsMapper = new MessageToInputsMapper(); var expectedString = "{\"Name\":\"Bob\",\"LastName\":\"The Builder\"}"; //-----------------------------Act---------------------------------- var mappedData = messageToInputsMapper.Map(message, inputs, false, true, false); //-----------------------------Assert------------------------------- Assert.AreEqual(expectedString, mappedData); }
public void MessageToInputsMapper_JsonMessage_UnMappableProperties_ShouldNotMap() { //-----------------------------Arrange------------------------------ const string message = "{\"Something\":\"Bob\",\"SomethingElse\":\"The Builder\"}"; var inputs = new List <(string name, string value)> { (name : "Name", value : "FirstName"), (name : "LastName", value : "Surname") }; var messageToInputsMapper = new MessageToInputsMapper(); var expectedString = "{}"; //-----------------------------Act---------------------------------- var mappedData = messageToInputsMapper.Map(message, inputs, true, false, false); //-----------------------------Assert------------------------------- Assert.AreEqual(expectedString, mappedData); }
public void MessageToInputsMapper_UnMappableData_Xml_Should_NotMap() { //-----------------------------Arrange------------------------------ const string message = "<Root><Something>Bob</Something><SomethingElse>The Builder</SomethingElse></Root>"; var inputs = new List <(string name, string value)> { (name : "Name", value : "FirstName"), (name : "LastName", value : "Surname") }; var messageToInputsMapper = new MessageToInputsMapper(); var expectedString = "{}"; //-----------------------------Act---------------------------------- var mappedData = messageToInputsMapper.Map(message, inputs, false, true, false);; //-----------------------------Assert------------------------------- Assert.AreEqual(expectedString, mappedData); }