public void SplitMessage_GsmCharactersExtensionThreePartTest(string message, string expectedThirdPart) { var splitted = SmsHelpers.SplitMessageWithWordWrap(message); Assert.True(splitted.Parts.Count == 3); Assert.Equal(expectedThirdPart, splitted.Parts[2].Content); }
public void SplitMessage_TwoPartsTest(string message, string expectedSecondMessage) { var splitted = SmsHelpers.SplitMessageWithWordWrap(message); Assert.Equal(2, splitted.Parts.Count); Assert.Equal(expectedSecondMessage, splitted.Parts[1].Content); }
public void SplitMessage_SinglePartUnicodeTest(string message) { var splitted = SmsHelpers.SplitMessageWithWordWrap(message); Assert.Single(splitted.Parts); Assert.Equal(message, splitted.Parts[0].Content); }
public void SplitMessage_TwoPartsUnicodeTest(string message, string expectedSecondPart) { var splitted = SmsHelpers.SplitMessageWithWordWrap(message); Assert.True(splitted.Parts.Count == 2); Assert.Equal(expectedSecondPart, splitted.Parts[1].Content); }
public void SplitMessage_MultipartEqual(string text) { var splitted = SmsHelpers.SplitMessageWithWordWrap(text); var combined = string.Concat(splitted.Parts.Select(part => part.Content)); Assert.Equal(combined, text); }
public void CountSmsParts_NoExceptions() { for (var i = 0; i < 100; i++) { for (var j = 1; j < 700; j++) { var str = GenerateRandomUnicodeString(j); SmsHelpers.GetEncoding(str); SmsHelpers.CountSmsParts(str); } } }
public void SplitMessage_RandomStringsTest() { for (var i = 0; i < 10000; i++) { var randomNum = RandomNum.Next(1, 400); var randomStr = GenerateRandomUnicodeString(randomNum); var splitted = SmsHelpers.SplitMessageWithWordWrap(randomStr); var combined = string.Concat(splitted.Parts.Select(part => part.Content)); Assert.Equal(combined, randomStr); } }
public void GetCharset_DetectEncodingGsmCharacters() { foreach (var c in GsmCharacters) { var encoding = SmsHelpers.GetEncoding(c.ToString()); Assert.Equal(SmsEncoding.Gsm7Bit, encoding); } foreach (var c in GsmCharactersExtension) { var encoding = SmsHelpers.GetEncoding(c.ToString()); Assert.Equal(SmsEncoding.Gsm7Bit, encoding); } }
public void SplitMessage_GsmCharactersExtensionTests(string message, string expectedSecondPart) { var splitted = SmsHelpers.SplitMessageWithWordWrap(message); if (expectedSecondPart == null) { Assert.Single(splitted.Parts); Assert.Equal(message, splitted.Parts[0].Content); } else { Assert.True(splitted.Parts.Count == 2); Assert.Equal(expectedSecondPart, splitted.Parts[1].Content); } }
public void CountSmsParts_UnicodeCharTest(char c) { var message = new string(c, 69); Assert.Equal(1, SmsHelpers.CountSmsParts(message)); message = new string(c, 70); Assert.Equal(1, SmsHelpers.CountSmsParts(message)); message = new string(c, 71); Assert.Equal(2, SmsHelpers.CountSmsParts(message)); message = new string(c, 134); Assert.Equal(2, SmsHelpers.CountSmsParts(message)); message = new string(c, 135); Assert.Equal(3, SmsHelpers.CountSmsParts(message)); }
public void CountSmsParts_7BitTest() { for (var i = 1; i < 1100; i++) { var generated = new StringBuilder(); for (var j = 0; j < i; j++) { // append a random character generated.Append(GsmCharacters.OrderBy(n => Guid.NewGuid()).First()); } var expectedNumOfParts = i <= 160 ? 1 : (int)Math.Ceiling((decimal)i / 153); var parts = SmsHelpers.CountSmsParts(generated.ToString()); Assert.Equal(parts, expectedNumOfParts); } }
public void SplitMessage_MultipleLinksUnicodeTest() { const string sms = Gsm7BitGoogleLink60 + " 🐳 " + Gsm7BitBaseChars60 + " 🐳 " + Gsm7BitGoogleLink60 + " 🐳 " + Gsm7BitBaseChars60 + " 🐳 " + Gsm7BitGoogleLink60; var splitted = SmsHelpers.SplitMessageWithWordWrap(sms); Assert.True(splitted.Parts.Count == 5); Assert.Equal(SmsEncoding.GsmUnicode, splitted.Encoding); Assert.Equal(Gsm7BitGoogleLink60 + " 🐳 ", splitted.Parts[0].Content); Assert.Equal(Gsm7BitBaseChars60 + " 🐳 ", splitted.Parts[1].Content); Assert.Equal(Gsm7BitGoogleLink60 + " 🐳 ", splitted.Parts[2].Content); Assert.Equal(Gsm7BitBaseChars60 + " 🐳 ", splitted.Parts[3].Content); Assert.Equal(Gsm7BitGoogleLink60, splitted.Parts[4].Content); Assert.Equal(64, splitted.Parts[0].Length); Assert.Equal(64, splitted.Parts[1].Length); Assert.Equal(64, splitted.Parts[2].Length); Assert.Equal(64, splitted.Parts[3].Length); Assert.Equal(60, splitted.Parts[4].Length); }
public void NormalizeNewLines_Test(string before, string expected) { var result = SmsHelpers.NormalizeNewLines(before); Assert.Equal(result, expected); }
public void CountSmsParts_NotConcatenatedMessage(string content, int expectedNumberOfParts) { var result = SmsHelpers.SplitMessageWithWordWrap(content, false); Assert.Equal(expectedNumberOfParts, result.Parts.Count); }
public void CountSmsParts_HighSurrogateTest(string content, int expectedLength) { var length = SmsHelpers.CountSmsParts(content); Assert.Equal(expectedLength, length); }
public void GetCharset_ThrowAnException() { Assert.Throws <ArgumentNullException>(() => SmsHelpers.GetEncoding(null)); }
public void GetCharset_DetectEncoding(string text, SmsEncoding expectedEncoding) { var encoding = SmsHelpers.GetEncoding(text); Assert.Equal(encoding, expectedEncoding); }
public void SplitMessage_Empty(string text) { var result = SmsHelpers.SplitMessageWithWordWrap(text); Assert.Empty(result.Parts); }
public void NormalizeNewLines_ReturnsNull() { Assert.Null(SmsHelpers.NormalizeNewLines(null)); }
public void CountSmsParts_ThrowArgumentNullException() { Assert.Throws <ArgumentNullException>(() => SmsHelpers.CountSmsParts(null)); }
public void CountSmsParts_Test(string sms, int expectedSmsParts) { var normalized = SmsHelpers.NormalizeNewLines(sms); Assert.True(SmsHelpers.CountSmsParts(normalized) == expectedSmsParts); }