public async Task SendMessageAsync_(string queueUrl, string messageBody) { var amazonSqsMock = new Mock <IAmazonSQS>(MockBehavior.Strict); amazonSqsMock .Setup(x => x.SendMessageAsync(It.IsAny <SendMessageRequest>(), It.IsAny <CancellationToken>())) .ReturnsAsync((SendMessageResponse)null); var clientFactoryMock = new Mock <ISqsClientFactory>(MockBehavior.Strict); clientFactoryMock .Setup(x => x.CreateClient(It.IsAny <string>(), It.IsAny <string>())) .Returns(() => amazonSqsMock.Object); var aws = new AwsSqs(clientFactoryMock.Object, It.IsAny <string>(), It.IsAny <string>()); var result = await aws.SendMessageAsync(queueUrl, messageBody); amazonSqsMock.Verify( x => x.SendMessageAsync( It.Is <SendMessageRequest>(arg => arg.QueueUrl == queueUrl && arg.MessageBody == messageBody), It.Is <CancellationToken>(arg => arg == default)), Times.Once); }
public async Task TestSendMessage() { var result = await sqs.SendMessageAsync(configuration["AWS_SQS:QueueUrl"], "test message"); Assert.AreEqual(HttpStatusCode.OK, result.HttpStatusCode); }