Extensions instead of partial classes
All checks were successful
Branch Build / build-test-deploy (push) Successful in 44s
All checks were successful
Branch Build / build-test-deploy (push) Successful in 44s
This commit is contained in:
@@ -42,10 +42,7 @@ namespace LinkMobility.Tests.Sms
|
||||
_clientOptionsMock.Setup(c => c.AllowRedirects).Returns(true);
|
||||
_clientOptionsMock.Setup(c => c.UseProxy).Returns(false);
|
||||
|
||||
_request = new SendBinaryMessageRequest(["436991234567"])
|
||||
{
|
||||
MessageContent = ["SGVsbG8gV29ybGQ="] // "Hello World" base64
|
||||
};
|
||||
_request = new SendBinaryMessageRequest(["SGVsbG8gV29ybGQ="], ["436991234567"]); // "Hello World" in Base64
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
@@ -87,14 +84,27 @@ namespace LinkMobility.Tests.Sms
|
||||
Assert.AreEqual("Scheme Parameter", callback.Headers["Authorization"]);
|
||||
Assert.AreEqual("LinkMobilityClient/1.0.0", callback.Headers["User-Agent"]);
|
||||
|
||||
_httpMessageHandlerMock.Mock
|
||||
.Protected()
|
||||
.Verify("SendAsync", Times.Once(), ItExpr.IsAny<HttpRequestMessage>(), ItExpr.IsAny<CancellationToken>());
|
||||
_httpMessageHandlerMock.Protected.Verify("SendAsync", Times.Once(), ItExpr.IsAny<HttpRequestMessage>(), ItExpr.IsAny<CancellationToken>());
|
||||
|
||||
_clientOptionsMock.VerifyGet(o => o.DefaultQueryParams, Times.Once);
|
||||
VerifyNoOtherCalls();
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void ShouldThrowOnInvalidContentCategoryForBinary()
|
||||
{
|
||||
// Arrange
|
||||
_request.ContentCategory = 0;
|
||||
var client = GetClient();
|
||||
|
||||
// Act & Assert
|
||||
var ex = Assert.ThrowsExactly<ArgumentException>(() => client.SendBinaryMessage(_request, TestContext.CancellationToken));
|
||||
Assert.AreEqual("contentCategory", ex.ParamName);
|
||||
Assert.StartsWith("Content category '0' is not valid.", ex.Message);
|
||||
|
||||
VerifyNoOtherCalls();
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public async Task ShouldSendBinaryMessageFullDetails()
|
||||
{
|
||||
@@ -145,9 +155,7 @@ namespace LinkMobility.Tests.Sms
|
||||
Assert.AreEqual("Scheme Parameter", callback.Headers["Authorization"]);
|
||||
Assert.AreEqual("LinkMobilityClient/1.0.0", callback.Headers["User-Agent"]);
|
||||
|
||||
_httpMessageHandlerMock.Mock
|
||||
.Protected()
|
||||
.Verify("SendAsync", Times.Once(), ItExpr.IsAny<HttpRequestMessage>(), ItExpr.IsAny<CancellationToken>());
|
||||
_httpMessageHandlerMock.Protected.Verify("SendAsync", Times.Once(), ItExpr.IsAny<HttpRequestMessage>(), ItExpr.IsAny<CancellationToken>());
|
||||
|
||||
_clientOptionsMock.VerifyGet(o => o.DefaultQueryParams, Times.Once);
|
||||
VerifyNoOtherCalls();
|
||||
@@ -167,6 +175,36 @@ namespace LinkMobility.Tests.Sms
|
||||
VerifyNoOtherCalls();
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void ShouldThrowOnNullMessageContentList()
|
||||
{
|
||||
// Arrange
|
||||
_request.MessageContent = null;
|
||||
var client = GetClient();
|
||||
|
||||
// Act & Assert
|
||||
var ex = Assert.ThrowsExactly<ArgumentException>(() => client.SendBinaryMessage(_request, TestContext.CancellationToken));
|
||||
|
||||
Assert.AreEqual("MessageContent", ex.ParamName);
|
||||
|
||||
VerifyNoOtherCalls();
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void ShouldThrowOnEmptyMessageContentList()
|
||||
{
|
||||
// Arrange
|
||||
_request.MessageContent = [];
|
||||
var client = GetClient();
|
||||
|
||||
// Act & Assert
|
||||
var ex = Assert.ThrowsExactly<ArgumentException>(() => client.SendBinaryMessage(_request, TestContext.CancellationToken));
|
||||
|
||||
Assert.AreEqual("MessageContent", ex.ParamName);
|
||||
|
||||
VerifyNoOtherCalls();
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void ShouldThrowOnInvalidMessageEncoding()
|
||||
{
|
||||
@@ -205,7 +243,7 @@ namespace LinkMobility.Tests.Sms
|
||||
// Act & Assert
|
||||
var ex = Assert.ThrowsExactly<ArgumentException>(() => client.SendBinaryMessage(_request, TestContext.CancellationToken));
|
||||
|
||||
Assert.AreEqual("RecipientAddressList", ex.ParamName);
|
||||
Assert.AreEqual("recipientAddressList", ex.ParamName);
|
||||
|
||||
VerifyNoOtherCalls();
|
||||
}
|
||||
@@ -224,7 +262,7 @@ namespace LinkMobility.Tests.Sms
|
||||
// Act & Assert
|
||||
var ex = Assert.ThrowsExactly<ArgumentException>(() => client.SendBinaryMessage(_request, TestContext.CancellationToken));
|
||||
|
||||
Assert.AreEqual("RecipientAddressList", ex.ParamName);
|
||||
Assert.AreEqual("recipientAddressList", ex.ParamName);
|
||||
Assert.StartsWith($"Recipient address '{recipient}' is not a valid MSISDN format.", ex.Message);
|
||||
|
||||
VerifyNoOtherCalls();
|
||||
|
||||
Reference in New Issue
Block a user