public async void Send_WithDefaultFromNumber_Success() { _twilioHttpClient.Setup(client => client.MakeRequestAsync(It.IsAny <TwilioHttp.Request>())) .ReturnsAsync(new TwilioHttp.Response(System.Net.HttpStatusCode.OK, "{'sid': '111'}")); var message = new SMSMessage { ToNumber = "0321", Content = "Test" }; var provider = new TwilioProvider( new TwilioOptions() { DefaultFromNumber = "000" }, _twilioHttpClient.Object, _loggerFactory.Object); var result = await provider.Send(message.ToParameters()); var sid = result.ReturnedValues["Sid"].ToString(); Assert.True(result.IsSuccess); Assert.Equal("111", sid); Assert.Empty(result.Errors); }
public async void Send_Success() { _twilioHttpClient.Setup(client => client.MakeRequestAsync(It.IsAny <TwilioHttp.Request>())) .ReturnsAsync(new TwilioHttp.Response(System.Net.HttpStatusCode.OK, "{'sid': '111'}")); var message = new SMSMessage { FromNumber = "0123", ToNumber = "0321", Content = "Test" }; var provider = new TwilioProvider(new TwilioOptions(), _twilioHttpClient.Object, _loggerFactory.Object); var result = await provider.Send(message.ToParameters()); var sid = result.ReturnedValues["Sid"].ToString(); Assert.True(result.IsSuccess); Assert.Equal("111", sid); Assert.Empty(result.Errors); var startMessage = LoggerHelper.FormatLogValues(TwilioLogMessages.Sending_Start, message.ToNumber); _logger.VerifyLog(LogLevel.Debug, startMessage); var endMessage = LoggerHelper.FormatLogValues(TwilioLogMessages.Sending_End, message.ToNumber, sid); _logger.VerifyLog(LogLevel.Debug, endMessage); }
public async void Send_Failed() { _twilioHttpClient.Setup(client => client.MakeRequestAsync(It.IsAny <TwilioHttp.Request>())) .ReturnsAsync(new TwilioHttp.Response(System.Net.HttpStatusCode.BadRequest, "Error01")); var message = new SMSMessage { FromNumber = "0123", ToNumber = "0321", Content = "Test" }; var provider = new TwilioProvider(new TwilioOptions(), _twilioHttpClient.Object, _loggerFactory.Object); var result = await provider.Send(message.ToParameters()); Assert.False(result.IsSuccess); Assert.NotEmpty(result.Errors); Assert.Contains("Error01", result.Errors[0]); var startMessage = LoggerHelper.FormatLogValues(TwilioLogMessages.Sending_Start, message.ToNumber); _logger.VerifyLog(LogLevel.Debug, startMessage); var warningMessage = LoggerHelper.FormatLogValues(TwilioLogMessages.Sending_Failed, message.ToNumber, result.Errors); _logger.VerifyLog(LogLevel.Warning, warningMessage); }
public async void Send_WithoutFromNumber_ReturnError() { var message = new SMSMessage { ToNumber = "0321", Content = "Test" }; var provider = new TwilioProvider(new TwilioOptions(), _twilioHttpClient.Object, _loggerFactory.Object); var result = await provider.Send(message.ToParameters()); Assert.False(result.IsSuccess); Assert.NotEmpty(result.Errors); Assert.Equal("From Number should not be empty", result.Errors[0]); }