add StrBufRFC2047encodeMessage which does quoted printeable encoding for a message.
[citadel.git] / libcitadel / tests / stringbuf_conversion.c
index 15634cc160755cbac330d1fee73951bde4b80262..00cbbe426d77f9e8bb6661d4a15633aa299b085c 100644 (file)
@@ -321,6 +321,33 @@ static void TestEncodeEmailSTDIN(void)
        FreeStrBuf(&Source);
 }
 
+static void StrBufRFC2047encodeMessageStdin(void)
+{
+       int fdin = 0;// STDIN
+       const char *Err;
+       StrBuf *Target;
+       StrBuf *Source;
+       StrBuf *Src;
+
+       Source = NewStrBuf();
+       Src = NewStrBuf();
+
+       printf("[");
+       while (fdin == 0) {
+
+               StrBufTCP_read_line(Source, &fdin, 0, &Err);
+               StrBufAppendBuf(Src, Source, 0);
+               StrBufAppendBufPlain(Src, HKEY("\n"), 0);
+                               
+       }
+
+       Target = StrBufRFC2047encodeMessage(Src);
+
+       printf("Target: \n%s\n", ChrPtr(Target));
+       FreeStrBuf(&Source);
+       FreeStrBuf(&Src);
+       FreeStrBuf(&Target);
+}
 
 static void TestHTML2ASCII_line(void)
 {
@@ -390,6 +417,9 @@ static void AddStrBufSimlpeTests(void)
                             case 'U':
                                     pTest = CU_add_test(pGroup, "TestUrlescEncodeStdin", TestUrlescEncodeStdin);
                                     break;
+                            case 'R':
+                                    pTest = CU_add_test(pGroup, "StrBufRFC2047encodeMessageStdin", StrBufRFC2047encodeMessageStdin);
+                                    break;
                             default:
                                     printf("%c not supported!\n", OutputEscapeAs);
                                     CU_ASSERT(1);