public async Task RunManual_When_Body_Is_Empty_Return_BadRequest() { var target = new ServiceBusTopicWriter(); var topicClient = new Mock <ITopicClient>(); var actual = await target.RunManual( CreateEmptyRequest(), log, new Mock <ITopicClient>().Object); Assert.IsType <BadRequestObjectResult>(actual); }
public async Task RunManual_When_Body_Has_Matching_Properties_Send_Items_To_TopicClient_With_Custom_Properties() { var target = new ServiceBusTopicWriter() { UserProperties = new TopicMessageUserProperty[] { new TopicMessageUserProperty("test") } }; var topicClient = new Mock <ITopicClient>(); topicClient .Setup(x => x.SendAsync(It.Is <IList <Message> >(m => m.Count == 2 && (string)m[0].UserProperties["test"] == "value1" && (string)m[1].UserProperties["test"] == "value2"))) .Returns(Task.CompletedTask); var actual = await target.RunManual( CreateJsonRequest(new[] { new { test = "value1" }, new { test = "value2" } }) , log , topicClient.Object); Assert.IsType <OkResult>(actual); }
public async Task RunManual_When_Empty_Properties_Sends_Messages_Without_Custom_Properties() { var target = new ServiceBusTopicWriter() { UserProperties = new TopicMessageUserProperty[0] }; var topicClient = new Mock <ITopicClient>(); topicClient .Setup(c => c.SendAsync(It.Is <IList <Message> >(x => x.Count == 2))) .Returns(Task.CompletedTask); var actual = await target.RunManual( CreateJsonRequest(@"[{},{}]") , log , topicClient.Object); Assert.IsType <OkResult>(actual); }
public async Task RunManual_When_Body_Has_Not_Matching_Properties_Send_Items_To_TopicClient_Without_Custom_Properties() { var target = new ServiceBusTopicWriter() { UserProperties = new TopicMessageUserProperty[] { new TopicMessageUserProperty("test") } }; var topicClient = new Mock <ITopicClient>(); topicClient .Setup(x => x.SendAsync(It.Is <IList <Message> >(m => m.Count == 2 && !m.Any(i => i.UserProperties.Count > 0)))) .Returns(Task.CompletedTask); var actual = await target.RunManual( CreateJsonRequest("[{}, {}]") , log , topicClient.Object); Assert.IsType <OkResult>(actual); }