aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/parser/textTest.cpp12
-rw-r--r--tests/parser/wordEncoderTest.cpp9
2 files changed, 21 insertions, 0 deletions
diff --git a/tests/parser/textTest.cpp b/tests/parser/textTest.cpp
index e9ddc262..f5111e79 100644
--- a/tests/parser/textTest.cpp
+++ b/tests/parser/textTest.cpp
@@ -32,6 +32,7 @@ VMIME_TEST_SUITE_BEGIN(textTest)
VMIME_TEST_LIST_BEGIN
VMIME_TEST(testConstructors)
VMIME_TEST(testCopy)
+ VMIME_TEST(testRecommendedEncoding)
VMIME_TEST(testNewFromString)
VMIME_TEST(testDisplayForm)
VMIME_TEST(testParse)
@@ -155,6 +156,17 @@ VMIME_TEST_SUITE_BEGIN(textTest)
VASSERT("copyFrom", t1 == t2);
}
+ void testRecommendedEncoding() {
+
+ vmime::encoding enc;
+ VASSERT_TRUE("1.1", vmime::charset("iso8859-1").getRecommendedEncoding(enc));
+ VASSERT_TRUE("1.2", enc.getName() == vmime::encodingTypes::QUOTED_PRINTABLE);
+ VASSERT_TRUE("1.2", vmime::charset("iso8859-2").getRecommendedEncoding(enc));
+ VASSERT_TRUE("1.3", enc.getName() == vmime::encodingTypes::QUOTED_PRINTABLE);
+ VASSERT_FALSE("1.3", vmime::charset(vmime::charsets::UTF_8).getRecommendedEncoding(enc));
+
+ }
+
void testNewFromString() {
vmime::string s1 = "only ASCII characters";
diff --git a/tests/parser/wordEncoderTest.cpp b/tests/parser/wordEncoderTest.cpp
index 08d34aa4..0c827bff 100644
--- a/tests/parser/wordEncoderTest.cpp
+++ b/tests/parser/wordEncoderTest.cpp
@@ -36,6 +36,7 @@ VMIME_TEST_SUITE_BEGIN(wordEncoderTest)
VMIME_TEST(testIsEncodingNeeded_specialChars)
VMIME_TEST(testGuessBestEncoding_QP)
VMIME_TEST(testGuessBestEncoding_B64)
+ VMIME_TEST(testGuessBestEncoding_size)
VMIME_TEST(testEncodeQP_RFC2047)
VMIME_TEST_LIST_END
@@ -159,6 +160,14 @@ VMIME_TEST_SUITE_BEGIN(wordEncoderTest)
);
}
+ void testGuessBestEncoding_size() {
+
+ std::string i(42949673, 'a');
+ auto enc = vmime::wordEncoder::guessBestEncoding(i, vmime::charset("utf-8"));
+ VASSERT_EQ("1", enc, vmime::wordEncoder::ENCODING_QP);
+
+ }
+
void testEncodeQP_RFC2047() {
// When Quoted-Printable is used, it should be RFC-2047 QP encoding