summaryrefslogtreecommitdiff
path: root/test/check_dbmail_misc.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/check_dbmail_misc.c')
-rw-r--r--test/check_dbmail_misc.c57
1 files changed, 57 insertions, 0 deletions
diff --git a/test/check_dbmail_misc.c b/test/check_dbmail_misc.c
index 2a571c6b..2effe9ee 100644
--- a/test/check_dbmail_misc.c
+++ b/test/check_dbmail_misc.c
@@ -424,6 +424,61 @@ START_TEST(test_whirlpool)
}
END_TEST
+START_TEST(test_get_crlf_encoded_opt1)
+{
+ char *in[] = {
+ "a\n",
+ "a\nb\nc\n",
+ "a\nb\r\nc\n",
+ "a\nb\rc\n",
+ "a\nb\r\r\nc\n",
+ NULL
+ };
+ char *out[] = {
+ "a\r\n",
+ "a\r\nb\r\nc\r\n",
+ "a\r\nb\r\nc\r\n",
+ "a\r\nb\rc\r\n",
+ "a\r\nb\r\r\nc\r\n",
+ NULL
+ };
+ int i=0;
+ while (in[i]) {
+ char *r = get_crlf_encoded_opt(in[i],0);
+ fail_unless(MATCH(r,out[i]), "get_crlf_encoded failed [%s]!=[%s]", r, out[i]);
+ g_free(r);
+ i++;
+ }
+}
+END_TEST
+
+START_TEST(test_get_crlf_encoded_opt2)
+{
+ char *in[] = {
+ "a\nb\nc.\n",
+ "a\n.b\r\nc.\n",
+ "a\nb\r.c.\n",
+ "a\nb\r\r\n.\nc\n",
+ NULL
+ };
+ char *out[] = {
+ "a\r\nb\r\nc.\r\n",
+ "a\r\n..b\r\nc.\r\n",
+ "a\r\nb\r.c.\r\n",
+ "a\r\nb\r\r\n..\r\nc\r\n",
+ NULL
+ };
+ int i=0;
+ while (in[i]) {
+ char *r = get_crlf_encoded_opt(in[i],1);
+ fail_unless(MATCH(r,out[i]), "get_crlf_encoded failed [%s]!=[%s]", r, out[i]);
+ g_free(r);
+ i++;
+ }
+}
+END_TEST
+
+
Suite *dbmail_misc_suite(void)
{
Suite *s = suite_create("Dbmail Misc");
@@ -448,6 +503,8 @@ Suite *dbmail_misc_suite(void)
tcase_add_test(tc_misc, test_whirlpool);
tcase_add_test(tc_misc, test_md5);
tcase_add_test(tc_misc, test_tiger);
+ tcase_add_test(tc_misc, test_get_crlf_encoded_opt1);
+ tcase_add_test(tc_misc, test_get_crlf_encoded_opt2);
return s;
}