From a3644638aaf0418598196a870204e0b632a4c8ad Mon Sep 17 00:00:00 2001
From: Thomas Bruederli <thomas@roundcube.net>
Date: Fri, 17 Apr 2015 06:28:40 -0400
Subject: [PATCH] Allow preference sections to define CSS class names

---
 tests/Framework/Mime.php |   35 +++++++++++++++++++++++++++++++++++
 1 files changed, 35 insertions(+), 0 deletions(-)

diff --git a/tests/Framework/Mime.php b/tests/Framework/Mime.php
index 3035ba0..4cf84cb 100644
--- a/tests/Framework/Mime.php
+++ b/tests/Framework/Mime.php
@@ -39,6 +39,13 @@
             19 => 'Test <"test test"@domain.tld>',
             20 => '<"test test"@domain.tld>',
             21 => '"test test"@domain.tld',
+            // invalid (#1489092)
+            22 => '"John Doe @ SomeBusinessName" <MAILER-DAEMON>',
+            23 => '=?UTF-8?B?IlRlc3QsVGVzdCI=?= <test@domain.tld>',
+            // invalid, but we do our best to parse correctly
+            24 => '"email@test.com" <>',
+            // valid with redundant quoting (#1490040)
+            25 => '"user"@"domain.tld"',
         );
 
         $results = array(
@@ -64,6 +71,11 @@
             19 => array(1, 'Test', '"test test"@domain.tld'),
             20 => array(1, '', '"test test"@domain.tld'),
             21 => array(1, '', '"test test"@domain.tld'),
+            // invalid (#1489092)
+            22 => array(1, 'John Doe @ SomeBusinessName', 'MAILER-DAEMON'),
+            23 => array(1, 'Test,Test', 'test@domain.tld'),
+            24 => array(1, '', 'email@test.com'),
+            25 => array(1, '', 'user@domain.tld'),
         );
 
         foreach ($headers as $idx => $header) {
@@ -144,6 +156,21 @@
     }
 
     /**
+     * Test format=flowed unfolding (#1490284)
+     */
+    function test_unfold_flowed2()
+    {
+        $flowed   = "> culpa qui officia deserunt mollit anim id est laborum.\r\n"
+                    ."> \r\n"
+                    ."Sed ut perspiciatis unde omnis iste natus error \r\nsit voluptatem";
+        $unfolded = "> culpa qui officia deserunt mollit anim id est laborum.\r\n"
+                    ."> \r\n"
+                    ."Sed ut perspiciatis unde omnis iste natus error sit voluptatem";
+
+        $this->assertEquals($unfolded, rcube_mime::unfold_flowed($flowed), "Test correct unfolding of quoted lines [2]");
+    }
+
+    /**
      * Test wordwrap()
      */
     function test_wordwrap()
@@ -189,6 +216,14 @@
                 array("-------\nabc def", 5),
                 "-------\nabc\ndef",
             ),
+            array(
+                array("http://xx.xxx.xx.xxx:8080/addressbooks/roundcubexxxxx%40xxxxxxxxxxxxxxxxxxxxxxx.xx.xx/testing/", 70),
+                "http://xx.xxx.xx.xxx:8080/addressbooks/roundcubexxxxx%40xxxxxxxxxxxxxxxxxxxxxxx.xx.xx/testing/",
+            ),
+            array(
+                array("this-is-just-some-blabla-to-make-this-more-than-seventy-five-characters-in-a-row -- this line should be wrapped", 20, "\n"),
+                "this-is-just-some-blabla-to-make-this-more-than-seventy-five-characters-in-a-row\n-- this line should\nbe wrapped",
+            ),
         );
 
         foreach ($samples as $sample) {

--
Gitblit v1.9.1