JAMES-2277 use unicode characters instead of escape sequences
Project: http://git-wip-us.apache.org/repos/asf/james-project/repo Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/3166aca9 Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/3166aca9 Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/3166aca9 Branch: refs/heads/master Commit: 3166aca9b0a3e63a813ba40c40df134bcd3e733c Parents: 355bbc3 Author: Matthieu Baechler <[email protected]> Authored: Wed Dec 27 12:14:37 2017 +0100 Committer: Raphael Ouazana <[email protected]> Committed: Wed Jan 10 10:45:41 2018 +0100 ---------------------------------------------------------------------- .../james/transport/mailets/OnlyText.java | 197 +++++++++---------- .../james/transport/mailets/UnwrapText.java | 2 +- .../james/transport/mailets/AddFooterTest.java | 20 +- .../james/transport/mailets/OnlyTextTest.java | 26 +-- .../transport/mailets/ReplaceContentTest.java | 8 +- .../transport/mailets/StripAttachmentTest.java | 35 ++-- .../james/transport/mailets/UnwrapTextTest.java | 36 ++-- .../parser/SearchCommandParserCharsetTest.java | 2 +- .../SearchCommandParserQuotedCharsetTest.java | 2 +- .../james/server/core/MimeMessageTest.java | 10 +- .../james/util/bayesian/BayesianAnalyzer.java | 4 +- .../lib/AbstractSieveRepositoryTest.java | 2 +- 12 files changed, 169 insertions(+), 175 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/james-project/blob/3166aca9/mailet/standard/src/main/java/org/apache/james/transport/mailets/OnlyText.java ---------------------------------------------------------------------- diff --git a/mailet/standard/src/main/java/org/apache/james/transport/mailets/OnlyText.java b/mailet/standard/src/main/java/org/apache/james/transport/mailets/OnlyText.java index 20cfb43..b4d6f02 100644 --- a/mailet/standard/src/main/java/org/apache/james/transport/mailets/OnlyText.java +++ b/mailet/standard/src/main/java/org/apache/james/transport/mailets/OnlyText.java @@ -213,106 +213,101 @@ public class OnlyText extends GenericMailet { charMap.put("nbsp", " "); charMap.put("quot", "\""); - charMap.put("iexcl", "\u00A1"); - charMap.put("cent", "\u00A2"); - charMap.put("pound", "\u00A3"); - charMap.put("curren", "\u00A4"); - charMap.put("yen", "\u00A5"); - charMap.put("brvbar", "\u00A6"); - charMap.put("sect", "\u00A7"); - charMap.put("uml", "\u00A8"); - charMap.put("copy", "\u00A9"); - charMap.put("ordf", "\u00AA"); - charMap.put("laquo", "\u00AB"); - charMap.put("not", "\u00AC"); - charMap.put("shy", "\u00AD"); - charMap.put("reg", "\u00AE"); - charMap.put("macr", "\u00AF"); - charMap.put("deg", "\u00B0"); - charMap.put("plusmn", "\u00B1"); - charMap.put("sup2", "\u00B2"); - charMap.put("sup3", "\u00B3"); - - charMap.put("acute", "\u00B4"); - charMap.put("micro", "\u00B5"); - charMap.put("para", "\u00B6"); - charMap.put("middot", "\u00B7"); - charMap.put("cedil", "\u00B8"); - charMap.put("sup1", "\u00B9"); - charMap.put("ordm", "\u00BA"); - charMap.put("raquo", "\u00BB"); - charMap.put("frac14", "\u00BC"); - charMap.put("frac12", "\u00BD"); - charMap.put("frac34", "\u00BE"); - charMap.put("iquest", "\u00BF"); - - charMap.put("Agrave", "\u00C0"); - charMap.put("Aacute", "\u00C1"); - charMap.put("Acirc", "\u00C2"); - charMap.put("Atilde", "\u00C3"); - charMap.put("Auml", "\u00C4"); - charMap.put("Aring", "\u00C5"); - charMap.put("AElig", "\u00C6"); - charMap.put("Ccedil", "\u00C7"); - charMap.put("Egrave", "\u00C8"); - charMap.put("Eacute", "\u00C9"); - charMap.put("Ecirc", "\u00CA"); - charMap.put("Euml", "\u00CB"); - charMap.put("Igrave", "\u00CC"); - charMap.put("Iacute", "\u00CD"); - charMap.put("Icirc", "\u00CE"); - charMap.put("Iuml", "\u00CF"); - - charMap.put("ETH", "\u00D0"); - charMap.put("Ntilde", "\u00D1"); - charMap.put("Ograve", "\u00D2"); - charMap.put("Oacute", "\u00D3"); - charMap.put("Ocirc", "\u00D4"); - charMap.put("Otilde", "\u00D5"); - charMap.put("Ouml", "\u00D6"); - charMap.put("times", "\u00D7"); - charMap.put("Oslash", "\u00D8"); - charMap.put("Ugrave", "\u00D9"); - charMap.put("Uacute", "\u00DA"); - charMap.put("Ucirc", "\u00DB"); - charMap.put("Uuml", "\u00DC"); - charMap.put("Yacute", "\u00DD"); - charMap.put("THORN", "\u00DE"); - charMap.put("szlig", "\u00DF"); - - charMap.put("agrave", "\u00E0"); - charMap.put("aacute", "\u00E1"); - charMap.put("acirc", "\u00E2"); - charMap.put("atilde", "\u00E3"); - charMap.put("auml", "\u00E4"); - charMap.put("aring", "\u00E5"); - charMap.put("aelig", "\u00E6"); - charMap.put("ccedil", "\u00E7"); - charMap.put("egrave", "\u00E8"); - charMap.put("eacute", "\u00E9"); - charMap.put("ecirc", "\u00EA"); - charMap.put("euml", "\u00EB"); - charMap.put("igrave", "\u00EC"); - charMap.put("iacute", "\u00ED"); - charMap.put("icirc", "\u00EE"); - charMap.put("iuml", "\u00EF"); - - charMap.put("eth", "\u00F0"); - charMap.put("ntilde", "\u00F1"); - charMap.put("ograve", "\u00F2"); - charMap.put("oacute", "\u00F3"); - charMap.put("ocirc", "\u00F4"); - charMap.put("otilde", "\u00F5"); - charMap.put("ouml", "\u00F6"); - charMap.put("divid", "\u00F7"); - charMap.put("oslash", "\u00F8"); - charMap.put("ugrave", "\u00F9"); - charMap.put("uacute", "\u00FA"); - charMap.put("ucirc", "\u00FB"); - charMap.put("uuml", "\u00FC"); - charMap.put("yacute", "\u00FD"); - charMap.put("thorn", "\u00FE"); - charMap.put("yuml", "\u00FF"); - charMap.put("euro", "\u0080"); + charMap.put("Ouml", "Ã"); + charMap.put("Oacute", "Ã"); + charMap.put("iquest", "¿"); + charMap.put("yuml", "ÿ"); + charMap.put("cent", "¢"); + charMap.put("deg", "°"); + charMap.put("aacute", "á"); + charMap.put("uuml", "ü"); + charMap.put("Otilde", "Ã"); + charMap.put("Iacute", "Ã"); + charMap.put("frac12", "½"); + charMap.put("atilde", "ã"); + charMap.put("ordf", "ª"); + charMap.put("sup2", "²"); + charMap.put("sup3", "³"); + charMap.put("frac14", "¼"); + charMap.put("ucirc", "û"); + charMap.put("brvbar", "¦"); + charMap.put("reg", "®"); + charMap.put("sup1", "¹"); + charMap.put("THORN", "Ã"); + charMap.put("ordm", "º"); + charMap.put("eth", "ð"); + charMap.put("Acirc", "Ã"); + charMap.put("aring", "Ã¥"); + charMap.put("Uacute", "Ã"); + charMap.put("oslash", "ø"); + charMap.put("eacute", "é"); + charMap.put("agrave", "à "); + charMap.put("Ecirc", "Ã"); + charMap.put("laquo", "«"); + charMap.put("Igrave", "Ã"); + charMap.put("Agrave", "Ã"); + charMap.put("macr", "¯"); + charMap.put("Ucirc", "Ã"); + charMap.put("igrave", "ì"); + charMap.put("ouml", "ö"); + charMap.put("iexcl", "¡"); + charMap.put("otilde", "õ"); + charMap.put("ugrave", "ù"); + charMap.put("Aring", "à "); + charMap.put("Ograve", "Ã"); + charMap.put("Ugrave", "Ã"); + charMap.put("ograve", "ò"); + charMap.put("acute", "´"); + charMap.put("ecirc", "ê"); + charMap.put("euro", "â¬"); + charMap.put("uacute", "ú"); + charMap.put("shy", "\\u00AD"); + charMap.put("cedil", "¸"); + charMap.put("raquo", "»"); + charMap.put("Atilde", "Ã"); + charMap.put("Iuml", "Ã"); + charMap.put("iacute", "Ã"); + charMap.put("ocirc", "ô"); + charMap.put("curren", "¤"); + charMap.put("frac34", "¾"); + charMap.put("Euml", "Ã"); + charMap.put("szlig", "Ã"); + charMap.put("pound", "£"); + charMap.put("not", "¬"); + charMap.put("AElig", "Ã"); + charMap.put("times", "Ã"); + charMap.put("Aacute", "Ã"); + charMap.put("Icirc", "Ã"); + charMap.put("para", "¶"); + charMap.put("uml", "¨"); + charMap.put("oacute", "ó"); + charMap.put("copy", "©"); + charMap.put("Eacute", "Ã"); + charMap.put("Oslash", "Ã"); + charMap.put("divid", "÷"); + charMap.put("aelig", "æ"); + charMap.put("euml", "ë"); + charMap.put("Ocirc", "Ã"); + charMap.put("yen", "Â¥"); + charMap.put("ntilde", "ñ"); + charMap.put("Ntilde", "Ã"); + charMap.put("thorn", "þ"); + charMap.put("yacute", "ý"); + charMap.put("Auml", "Ã"); + charMap.put("Yacute", "Ã"); + charMap.put("ccedil", "ç"); + charMap.put("micro", "µ"); + charMap.put("Ccedil", "Ã"); + charMap.put("sect", "§"); + charMap.put("icirc", "î"); + charMap.put("middot", "·"); + charMap.put("Uuml", "Ã"); + charMap.put("ETH", "Ã"); + charMap.put("egrave", "è"); + charMap.put("iuml", "ï"); + charMap.put("plusmn", "±"); + charMap.put("acirc", "â"); + charMap.put("auml", "ä"); + charMap.put("Egrave", "Ã"); } } http://git-wip-us.apache.org/repos/asf/james-project/blob/3166aca9/mailet/standard/src/main/java/org/apache/james/transport/mailets/UnwrapText.java ---------------------------------------------------------------------- diff --git a/mailet/standard/src/main/java/org/apache/james/transport/mailets/UnwrapText.java b/mailet/standard/src/main/java/org/apache/james/transport/mailets/UnwrapText.java index 7d3b3ec..8353644 100644 --- a/mailet/standard/src/main/java/org/apache/james/transport/mailets/UnwrapText.java +++ b/mailet/standard/src/main/java/org/apache/james/transport/mailets/UnwrapText.java @@ -102,7 +102,7 @@ public class UnwrapText extends GenericMailet { Pattern p1 = Pattern.compile("([> ]*)(.*[^ .?!][ ]*)$", 0); //P2: Quotation char at the begin of a line and the first word starts with a lowercase char or a number. The word ends with a space, a tab or a lineend. - Pattern p2 = Pattern.compile("^([> ]*)(([a-z\u00E0\u00E8\u00E9\u00EC\u00F2\u00F9][^ \t\r\n]*|[0-9][0-9,.]*)([ \t].*$|$))", 0); + Pattern p2 = Pattern.compile("^([> ]*)(([a-zà èéìòù][^ \t\r\n]*|[0-9][0-9,.]*)([ \t].*$|$))", 0); // Width computation int width = 0; http://git-wip-us.apache.org/repos/asf/james-project/blob/3166aca9/mailet/standard/src/test/java/org/apache/james/transport/mailets/AddFooterTest.java ---------------------------------------------------------------------- diff --git a/mailet/standard/src/test/java/org/apache/james/transport/mailets/AddFooterTest.java b/mailet/standard/src/test/java/org/apache/james/transport/mailets/AddFooterTest.java index cfdb7bc..14588f7 100644 --- a/mailet/standard/src/test/java/org/apache/james/transport/mailets/AddFooterTest.java +++ b/mailet/standard/src/test/java/org/apache/james/transport/mailets/AddFooterTest.java @@ -94,7 +94,7 @@ public class AddFooterTest { public void shouldAddFooterWhenQuotedPrintableTextPlainMessage() throws MessagingException, IOException { FakeMailetConfig mailetConfig = FakeMailetConfig.builder() .mailetName("Test") - .setProperty("text", "------ my footer \u00E0/\u20AC ------") + .setProperty("text", "------ my footer à /⬠------") .build(); mailet.init(mailetConfig); @@ -120,7 +120,7 @@ public class AddFooterTest { public void shouldEnsureCarriageReturnWhenAddFooterWithTextPlainMessage() throws MessagingException, IOException { FakeMailetConfig mailetConfig = FakeMailetConfig.builder() .mailetName("Test") - .setProperty("text", "------ my footer \u00E0/\u20AC ------") + .setProperty("text", "------ my footer à /⬠------") .build(); mailet.init(mailetConfig); @@ -153,7 +153,7 @@ public class AddFooterTest { public void shouldNotAddFooterWhenUnsupportedEncoding() throws MessagingException, IOException { FakeMailetConfig mailetConfig = FakeMailetConfig.builder() .mailetName("Test") - .setProperty("text", "------ my footer \u00E0/\u20AC ------") + .setProperty("text", "------ my footer à /⬠------") .build(); mailet.init(mailetConfig); @@ -176,7 +176,7 @@ public class AddFooterTest { public void shouldNotAddFooterWhenUnsupportedTextContentType() throws MessagingException, IOException { FakeMailetConfig mailetConfig = FakeMailetConfig.builder() .mailetName("Test") - .setProperty("text", "------ my footer \u00E0/\u20AC ------") + .setProperty("text", "------ my footer à /⬠------") .build(); mailet.init(mailetConfig); @@ -203,7 +203,7 @@ public class AddFooterTest { public void shouldNotAddFooterWhenNestedUnsupportedMultipart() throws MessagingException, IOException { FakeMailetConfig mailetConfig = FakeMailetConfig.builder() .mailetName("Test") - .setProperty("text", "------ my footer \u00E0/\u20AC ------") + .setProperty("text", "------ my footer à /⬠------") .build(); mailet.init(mailetConfig); @@ -239,7 +239,7 @@ public class AddFooterTest { public void shouldAddFooterWhenMultipartRelatedHtmlMessage() throws MessagingException, IOException { FakeMailetConfig mailetConfig = FakeMailetConfig.builder() .mailetName("Test") - .setProperty("text", "------ my footer \u00E0/\u20AC ------") + .setProperty("text", "------ my footer à /⬠------") .build(); mailet.init(mailetConfig); @@ -292,7 +292,7 @@ public class AddFooterTest { IOException { FakeMailetConfig mailetConfig = FakeMailetConfig.builder() .mailetName("Test") - .setProperty("text", "------ my footer \u00E0/\u20AC ------") + .setProperty("text", "------ my footer à /⬠------") .build(); mailet.init(mailetConfig); @@ -352,7 +352,7 @@ public class AddFooterTest { IOException { FakeMailetConfig mailetConfig = FakeMailetConfig.builder() .mailetName("Test") - .setProperty("text", "------ my footer \u00E0/\u20AC ------") + .setProperty("text", "------ my footer à /⬠------") .build(); mailet.init(mailetConfig); @@ -389,7 +389,7 @@ public class AddFooterTest { IOException { FakeMailetConfig mailetConfig = FakeMailetConfig.builder() .mailetName("Test") - .setProperty("text", "------ my footer \u00E0/\u20AC ------") + .setProperty("text", "------ my footer à /⬠------") .build(); mailet.init(mailetConfig); @@ -426,7 +426,7 @@ public class AddFooterTest { public void shouldThrowMessagingExceptionWhenIOExceptionReadingMessage() throws MessagingException { FakeMailetConfig mailetConfig = FakeMailetConfig.builder() .mailetName("Test") - .setProperty("text", "------ my footer \u00E0/\u20AC ------") + .setProperty("text", "------ my footer à /⬠------") .build(); mailet.init(mailetConfig); http://git-wip-us.apache.org/repos/asf/james-project/blob/3166aca9/mailet/standard/src/test/java/org/apache/james/transport/mailets/OnlyTextTest.java ---------------------------------------------------------------------- diff --git a/mailet/standard/src/test/java/org/apache/james/transport/mailets/OnlyTextTest.java b/mailet/standard/src/test/java/org/apache/james/transport/mailets/OnlyTextTest.java index 56572cf..4ce817f 100644 --- a/mailet/standard/src/test/java/org/apache/james/transport/mailets/OnlyTextTest.java +++ b/mailet/standard/src/test/java/org/apache/james/transport/mailets/OnlyTextTest.java @@ -61,7 +61,7 @@ public class OnlyTextTest extends TestCase { message = new MimeMessage(Session.getDefaultInstance(new Properties())); message.setSubject("prova"); - message.setText("Questa \u00E8 una prova"); + message.setText("Questa è una prova"); message.saveChanges(); mail = FakeMail.builder() @@ -70,7 +70,7 @@ public class OnlyTextTest extends TestCase { mailet.service(mail); assertEquals("prova", mail.getMessage().getSubject()); - assertEquals("Questa \u00E8 una prova", mail.getMessage().getContent()); + assertEquals("Questa è una prova", mail.getMessage().getContent()); // ----------------- @@ -78,10 +78,10 @@ public class OnlyTextTest extends TestCase { message.setSubject("prova"); MimeMultipart mp = new MimeMultipart(); MimeBodyPart bp = new MimeBodyPart(); - bp.setText("Questo \u00E8 un part interno1"); + bp.setText("Questo è un part interno1"); mp.addBodyPart(bp); bp = new MimeBodyPart(); - bp.setText("Questo \u00E8 un part interno2"); + bp.setText("Questo è un part interno2"); mp.addBodyPart(bp); bp = new MimeBodyPart(); MimeMessage message2 = new MimeMessage(Session @@ -97,7 +97,7 @@ public class OnlyTextTest extends TestCase { mailet.service(mail); assertEquals("prova", mail.getMessage().getSubject()); - assertEquals("Questo \u00E8 un part interno1", mail.getMessage() + assertEquals("Questo è un part interno1", mail.getMessage() .getContent()); // ----------------- @@ -106,10 +106,10 @@ public class OnlyTextTest extends TestCase { message.setSubject("prova"); mp = new MimeMultipart(); bp = new MimeBodyPart(); - bp.setText("Questo \u00E8 un part interno1"); + bp.setText("Questo è un part interno1"); mp.addBodyPart(bp); bp = new MimeBodyPart(); - bp.setText("Questo \u00E8 un part interno2"); + bp.setText("Questo è un part interno2"); mp.addBodyPart(bp); bp = new MimeBodyPart(); message2 = new MimeMessage(Session.getDefaultInstance(new Properties())); @@ -130,14 +130,14 @@ public class OnlyTextTest extends TestCase { mailet.service(mail); assertEquals("prova", mail.getMessage().getSubject()); - assertEquals("Questo \u00E8 un part interno1", mail.getMessage() + assertEquals("Questo è un part interno1", mail.getMessage() .getContent()); // --------------------- message = new MimeMessage(Session.getDefaultInstance(new Properties())); message.setSubject("prova"); - message.setContent("<p>Questa \u00E8 una prova<br />di html</p>", + message.setContent("<p>Questa è una prova<br />di html</p>", "text/html"); message.saveChanges(); @@ -147,7 +147,7 @@ public class OnlyTextTest extends TestCase { mailet.service(mail); assertEquals("prova", mail.getMessage().getSubject()); - assertEquals("Questa \u00E8 una prova\ndi html\n", mail.getMessage() + assertEquals("Questa è una prova\ndi html\n", mail.getMessage() .getContent()); assertTrue(mail.getMessage().isMimeType("text/plain")); @@ -161,7 +161,7 @@ public class OnlyTextTest extends TestCase { bp.setContent(message2, "message/rfc822"); mp.addBodyPart(bp); bp = new MimeBodyPart(); - bp.setContent("<p>Questa \u00E8 una prova<br />di html</p>", "text/html"); + bp.setContent("<p>Questa è una prova<br />di html</p>", "text/html"); mp.addBodyPart(bp); message.setContent(mp); message.saveChanges(); @@ -172,7 +172,7 @@ public class OnlyTextTest extends TestCase { mailet.service(mail); assertEquals("prova", mail.getMessage().getSubject()); - assertEquals("Questa \u00E8 una prova\ndi html\n", mail.getMessage() + assertEquals("Questa è una prova\ndi html\n", mail.getMessage() .getContent()); assertTrue(mail.getMessage().isMimeType("text/plain")); } @@ -191,7 +191,7 @@ public class OnlyTextTest extends TestCase { html = "<b>Vediamo invece come andiamo con gli entities</b><br />èà &grave;<br>"; assertEquals( - "Vediamo invece come andiamo con gli entities\n\u00E8\u00E0 `\n", + "Vediamo invece come andiamo con gli entities\nèà `\n", mailet.html2Text(html)); } http://git-wip-us.apache.org/repos/asf/james-project/blob/3166aca9/mailet/standard/src/test/java/org/apache/james/transport/mailets/ReplaceContentTest.java ---------------------------------------------------------------------- diff --git a/mailet/standard/src/test/java/org/apache/james/transport/mailets/ReplaceContentTest.java b/mailet/standard/src/test/java/org/apache/james/transport/mailets/ReplaceContentTest.java index 62723e8..1611f30 100644 --- a/mailet/standard/src/test/java/org/apache/james/transport/mailets/ReplaceContentTest.java +++ b/mailet/standard/src/test/java/org/apache/james/transport/mailets/ReplaceContentTest.java @@ -79,7 +79,7 @@ public class ReplaceContentTest { .setProperty("bodyPattern", "/test/TEST/i/," + "/o/a/r/," + - "/S/s/r/,/\\u00E8/e'//," + + "/S/s/r/,/è/e'//," + "/test([^\\/]*?)bla/X$1Y/im/," + "/X(.\\n)Y/P$1Q//," + "/\\/\\/,//") @@ -87,7 +87,7 @@ public class ReplaceContentTest { mailet.init(mailetConfig); MimeMessage message = new MimeMessage(Session.getDefaultInstance(new Properties())); - message.setText("This is one simple test/ \u00E8 one simple test.\n" + message.setText("This is one simple test/ è one simple test.\n" + "Blo blo blo blo.\n"); Mail mail = FakeMail.builder() @@ -173,7 +173,7 @@ public class ReplaceContentTest { MimeMessage message = new MimeMessage(Session.getDefaultInstance(new Properties())); message.setSubject("one test"); - message.setText("Replacement \u2026 one test \u2026"); + message.setText("Replacement ⦠one test â¦"); Mail mail = FakeMail.builder() .mimeMessage(message) @@ -221,7 +221,7 @@ public class ReplaceContentTest { MimeMessage message = new MimeMessage(Session.getDefaultInstance(new Properties())); message.setSubject("one test"); - message.setText("This is one simple test/ \u00E8 one simple test.\n" + message.setText("This is one simple test/ è one simple test.\n" + "Blo blo blo blo.\n"); Mail mail = FakeMail.builder() http://git-wip-us.apache.org/repos/asf/james-project/blob/3166aca9/mailet/standard/src/test/java/org/apache/james/transport/mailets/StripAttachmentTest.java ---------------------------------------------------------------------- diff --git a/mailet/standard/src/test/java/org/apache/james/transport/mailets/StripAttachmentTest.java b/mailet/standard/src/test/java/org/apache/james/transport/mailets/StripAttachmentTest.java index c60e4a1..8315163 100644 --- a/mailet/standard/src/test/java/org/apache/james/transport/mailets/StripAttachmentTest.java +++ b/mailet/standard/src/test/java/org/apache/james/transport/mailets/StripAttachmentTest.java @@ -55,7 +55,7 @@ import org.junit.rules.TemporaryFolder; public class StripAttachmentTest { - private static final String EXPECTED_ATTACHMENT_CONTENT = "\u0023\u00A4\u00E3\u00E0\u00E9"; + private static final String EXPECTED_ATTACHMENT_CONTENT = "#¤ãà é"; private static final Optional<String> ABSENT_MIME_TYPE = Optional.empty(); private static final String CONTENT_TRANSFER_ENCODING_VALUE = "8bit"; @@ -127,7 +127,7 @@ public class StripAttachmentTest { MimeMessageBuilder.bodyPartBuilder() .data("simple text"), createAttachmentBodyPart(expectedAttachmentContent, "10.tmp", TEXT_HEADERS), - createAttachmentBodyPart("\u0014\u00A3\u00E1\u00E2\u00E4", "temp.zip", TEXT_HEADERS)); + createAttachmentBodyPart("\u0014£áâä", "temp.zip", TEXT_HEADERS)); Mail mail = FakeMail.fromMessage(message); @@ -198,7 +198,7 @@ public class StripAttachmentTest { MimeMessageBuilder.bodyPartBuilder() .data("simple text"), createAttachmentBodyPart(expectedAttachmentContent, "temp_filname.tmp", TEXT_HEADERS), - createAttachmentBodyPart("\u0014\u00A3\u00E1\u00E2\u00E4", "winmail.dat", TEXT_HEADERS)); + createAttachmentBodyPart("\u0014£áâä", "winmail.dat", TEXT_HEADERS)); Mail mail = FakeMail.fromMessage(message); @@ -232,7 +232,7 @@ public class StripAttachmentTest { .data("simple text"), createAttachmentBodyPart(expectedAttachmentContent, "=?iso-8859-15?Q?=E9_++++Pubblicit=E0_=E9_vietata____Milano9052.tmp?=", TEXT_HEADERS), - createAttachmentBodyPart("\u0014\u00A3\u00E1\u00E2\u00E4", "temp.zip", TEXT_HEADERS)); + createAttachmentBodyPart("\u0014£áâä", "temp.zip", TEXT_HEADERS)); Mail mail = FakeMail.fromMessage(message); @@ -270,7 +270,7 @@ public class StripAttachmentTest { MimeMessageBuilder.bodyPartBuilder() .data("simple text"), createAttachmentBodyPart(EXPECTED_ATTACHMENT_CONTENT, expectedKey, TEXT_HEADERS), - createAttachmentBodyPart("\u0014\u00A3\u00E1\u00E2\u00E4", "temp.zip", TEXT_HEADERS)); + createAttachmentBodyPart("\u0014£áâä", "temp.zip", TEXT_HEADERS)); Mail mail = FakeMail.fromMessage(message); @@ -815,18 +815,19 @@ public class StripAttachmentTest { .setProperty("pattern", ".*\\.tmp") .setProperty("decodeFilename", "true") .setProperty("replaceFilenamePattern", - "/[\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5]/A//," - + "/[\u00C6]/AE//," - + "/[\u00C8\u00C9\u00CA\u00CB]/E//," - + "/[\u00CC\u00CD\u00CE\u00CF]/I//," - + "/[\u00D2\u00D3\u00D4\u00D5\u00D6]/O//," - + "/[\u00D7]/x//," + "/[\u00D9\u00DA\u00DB\u00DC]/U//," - + "/[\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5]/a//," - + "/[\u00E6]/ae//," - + "/[\u00E8\u00E9\u00EA\u00EB]/e/r/," - + "/[\u00EC\u00ED\u00EE\u00EF]/i//," - + "/[\u00F2\u00F3\u00F4\u00F5\u00F6]/o//," - + "/[\u00F9\u00FA\u00FB\u00FC]/u//," + "/[ÃÃÃÃÃà ]/A//," + + "/[Ã]/AE//," + + "/[ÃÃÃÃ]/E//," + + "/[ÃÃÃÃ]/I//," + + "/[ÃÃÃÃÃ]/O//," + + "/[Ã]/x//," + + "/[ÃÃÃÃ]/U//," + + "/[à áâãäå]/a//," + + "/[æ]/ae//," + + "/[èéêë]/e/r/," + + "/[ìÃîï]/i//," + + "/[òóôõö]/o//," + + "/[ùúûü]/u//," + "/[^A-Za-z0-9._-]+/_/r/") .build(); http://git-wip-us.apache.org/repos/asf/james-project/blob/3166aca9/mailet/standard/src/test/java/org/apache/james/transport/mailets/UnwrapTextTest.java ---------------------------------------------------------------------- diff --git a/mailet/standard/src/test/java/org/apache/james/transport/mailets/UnwrapTextTest.java b/mailet/standard/src/test/java/org/apache/james/transport/mailets/UnwrapTextTest.java index f408974..7014e41 100644 --- a/mailet/standard/src/test/java/org/apache/james/transport/mailets/UnwrapTextTest.java +++ b/mailet/standard/src/test/java/org/apache/james/transport/mailets/UnwrapTextTest.java @@ -38,12 +38,12 @@ public class UnwrapTextTest { input = "Prova per vedere se effettivamente il testo viene wrappato\r\n" + "come dovrebbe.\r\n" + - "Chiss\u00E0 se funziona davvero\r\n" + + "Chissà se funziona davvero\r\n" + "o se va solo come gli pare"; output = "Prova per vedere se effettivamente il testo viene wrappato come dovrebbe.\r\n" + - "Chiss\u00E0 se funziona davvero\r\n" + + "Chissà se funziona davvero\r\n" + "o se va solo come gli pare"; Assert.assertEquals(output, UnwrapText.unwrap(input)); @@ -51,12 +51,12 @@ public class UnwrapTextTest { input = "> Prova per vedere se effettivamente il testo viene wrappato\r\n" + "> come dovrebbe.\r\n" + - "> Chiss\u00E0 se funziona davvero\r\n" + + "> Chissà se funziona davvero\r\n" + "> o se va solo come gli pare"; output = "> Prova per vedere se effettivamente il testo viene wrappato come dovrebbe.\r\n" + - "> Chiss\u00E0 se funziona davvero\r\n" + + "> Chissà se funziona davvero\r\n" + "> o se va solo come gli pare"; Assert.assertEquals(output, UnwrapText.unwrap(input)); @@ -64,14 +64,14 @@ public class UnwrapTextTest { input = "> Prova per vedere se effettivamente il testo viene wrappato\r\n" + "> come dovrebbe.\r\n" + - "> Chiss\u00E0 se funziona davvero\r\n" + + "> Chissà se funziona davvero\r\n" + "> o se va solo come gli pare\r\n" + "> Prova per vedere se effettivamente il testo viene wrappato\r\n" + "> come dovrebbe.\r\n"; output = "> Prova per vedere se effettivamente il testo viene wrappato come dovrebbe.\r\n" + - "> Chiss\u00E0 se funziona davvero\r\n" + + "> Chissà se funziona davvero\r\n" + "> o se va solo come gli pare\r\n" + "> Prova per vedere se effettivamente il testo viene wrappato come dovrebbe.\r\n"; @@ -79,16 +79,16 @@ public class UnwrapTextTest { input = "> volevo chiedervi un piccolo aiutino. Una signora con un circolare ha un\r\n" + - "> dente che si \u00E8 scementato. Il cemento usato per la cementazione \u00E8\r\n" + - "> l'harvard. Il problema \u00E8 che non riesco a decementarlo. Avete qualche\r\n" + - "> trucco da suggerirmi per rimuovere il ponte? Il ponte \u00E8 in ceramica, per\r\n" + + "> dente che si è scementato. Il cemento usato per la cementazione è\r\n" + + "> l'harvard. Il problema è che non riesco a decementarlo. Avete qualche\r\n" + + "> trucco da suggerirmi per rimuovere il ponte? Il ponte è in ceramica, per\r\n" + "> cui l'utilizzo degli ultrasuoni puo' essere rischioso (?).\r\n"; output = "> volevo chiedervi un piccolo aiutino. Una signora con un circolare ha un " + - "dente che si \u00E8 scementato. Il cemento usato per la cementazione \u00E8 " + - "l'harvard. Il problema \u00E8 che non riesco a decementarlo. Avete qualche " + - "trucco da suggerirmi per rimuovere il ponte? Il ponte \u00E8 in ceramica, per " + + "dente che si è scementato. Il cemento usato per la cementazione è " + + "l'harvard. Il problema è che non riesco a decementarlo. Avete qualche " + + "trucco da suggerirmi per rimuovere il ponte? Il ponte è in ceramica, per " + "cui l'utilizzo degli ultrasuoni puo' essere rischioso (?).\r\n"; Assert.assertEquals(output, UnwrapText.unwrap(input)); @@ -153,9 +153,9 @@ public class UnwrapTextTest { "> mi trovo in difficolta,ho eseguito un lavoro di protesizzazione in\r\n" + "porcellana\r\n" + "> su 24 25 26 premetto che i denti sottostanti erano pieni di otturazioni in\r\n" + - "> amalgama ,la giovane paziente ,protesta perche sul 24 c'\u00E8 un leggero\r\n" + + "> amalgama ,la giovane paziente ,protesta perche sul 24 c'è un leggero\r\n" + "deficit\r\n" + - "> di chiusura,esteticamente visibile ma sicuramente la sua reazione \u00E8\r\n" + + "> di chiusura,esteticamente visibile ma sicuramente la sua reazione è\r\n" + "> sproporzionata,ha un atteggiamento rivendicativo come se l'avessi\r\n" + "> triffata,rifiuta un allungamenti con compositi ceramici .io sono convinto\r\n" + "che\r\n" + @@ -166,9 +166,9 @@ public class UnwrapTextTest { "> mi trovo in difficolta,ho eseguito un lavoro di protesizzazione in " + "porcellana " + "su 24 25 26 premetto che i denti sottostanti erano pieni di otturazioni in " + - "amalgama ,la giovane paziente ,protesta perche sul 24 c'\u00E8 un leggero " + + "amalgama ,la giovane paziente ,protesta perche sul 24 c'è un leggero " + "deficit " + - "di chiusura,esteticamente visibile ma sicuramente la sua reazione \u00E8 " + + "di chiusura,esteticamente visibile ma sicuramente la sua reazione è " + "sproporzionata,ha un atteggiamento rivendicativo come se l'avessi " + "triffata,rifiuta un allungamenti con compositi ceramici .io sono convinto " + "che " + @@ -181,7 +181,7 @@ public class UnwrapTextTest { input = "Prova per vedere se effettivamente il testo viene wrappato\r\n" + "come dovrebbe. \r\n" + - "Chiss\u00E0 se funziona davvero \r\n" + + "Chissà se funziona davvero \r\n" + "o se va solo come gli pare \r\n" + "> Prova per vedere se effettivamente il testo viene wrappato \r\n" + "come \r\n" + @@ -189,7 +189,7 @@ public class UnwrapTextTest { output = "Prova per vedere se effettivamente il testo viene wrappato come dovrebbe. \r\n" + - "Chiss\u00E0 se funziona davvero \r\n" + + "Chissà se funziona davvero \r\n" + "o se va solo come gli pare \r\n" + "> Prova per vedere se effettivamente il testo viene wrappato come dovrebbe. \r\n"; http://git-wip-us.apache.org/repos/asf/james-project/blob/3166aca9/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserCharsetTest.java ---------------------------------------------------------------------- diff --git a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserCharsetTest.java b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserCharsetTest.java index 2c36cac..d30279b 100644 --- a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserCharsetTest.java +++ b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserCharsetTest.java @@ -51,7 +51,7 @@ public class SearchCommandParserCharsetTest { private static final String ASCII_SEARCH_TERM = "A Search Term"; - private static final String NON_ASCII_SEARCH_TERM = "\u043A\u0430\u043A \u0414\u0435\u043B\u0430?"; + private static final String NON_ASCII_SEARCH_TERM = "как Ðела?"; private static final byte[] BYTES_NON_ASCII_SEARCH_TERM = NioUtils.toBytes( NON_ASCII_SEARCH_TERM, UTF8); http://git-wip-us.apache.org/repos/asf/james-project/blob/3166aca9/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserQuotedCharsetTest.java ---------------------------------------------------------------------- diff --git a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserQuotedCharsetTest.java b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserQuotedCharsetTest.java index 8ed9e21..97a4ec2 100644 --- a/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserQuotedCharsetTest.java +++ b/protocols/imap/src/test/java/org/apache/james/imap/decode/parser/SearchCommandParserQuotedCharsetTest.java @@ -53,7 +53,7 @@ public class SearchCommandParserQuotedCharsetTest { private static final String ASCII_SEARCH_TERM = "A Search Term"; - private static final String NON_ASCII_SEARCH_TERM = "\u043A\u0430\u043A \u0414\u0435\u043B\u0430?"; + private static final String NON_ASCII_SEARCH_TERM = "как Ðела?"; private static final String LENGTHY_NON_ASCII_SEARCH_TERM = NON_ASCII_SEARCH_TERM + NON_ASCII_SEARCH_TERM http://git-wip-us.apache.org/repos/asf/james-project/blob/3166aca9/server/container/core/src/test/java/org/apache/james/server/core/MimeMessageTest.java ---------------------------------------------------------------------- diff --git a/server/container/core/src/test/java/org/apache/james/server/core/MimeMessageTest.java b/server/container/core/src/test/java/org/apache/james/server/core/MimeMessageTest.java index eaa8952..a7a7cb1 100644 --- a/server/container/core/src/test/java/org/apache/james/server/core/MimeMessageTest.java +++ b/server/container/core/src/test/java/org/apache/james/server/core/MimeMessageTest.java @@ -100,7 +100,7 @@ public class MimeMessageTest { mmCreated.setSubject("test"); MimeMultipart mm = new MimeMultipart("alternative"); mm.addBodyPart(new MimeBodyPart(new InternetHeaders(new ByteArrayInputStream("X-header: test1\r\nContent-Type: text/plain; charset=Cp1252\r\n" - .getBytes())), "first part \u00F2\u00E0\u00F9".getBytes())); + .getBytes())), "first part òà ù".getBytes())); mm.addBodyPart(new MimeBodyPart(new InternetHeaders(new ByteArrayInputStream("X-header: test2\r\nContent-Type: text/plain; charset=Cp1252\r\nContent-Transfer-Encoding: quoted-printable\r\n" .getBytes())), "second part =E8=E8".getBytes())); mmCreated.setContent(mm); @@ -199,7 +199,7 @@ public class MimeMessageTest { MimeMultipart content1 = (MimeMultipart) mm.getContent(); BodyPart b1 = content1.getBodyPart(0); - b1.setContent("test\u20AC", "text/plain; charset=Cp1252"); + b1.setContent("testâ¬", "text/plain; charset=Cp1252"); mm.setContent(content1, mm.getContentType()); // .setHeader(RFC2822Headers.CONTENT_TYPE,contentType); mm.saveChanges(); @@ -214,7 +214,7 @@ public class MimeMessageTest { assertEquals(getMultipartMessageExpected2(), getCleanedMessageSource(mm)); - mm.setContent("mynewco\u00F2\u00E0\u00F9ntent\u20AC\u00E0!", "text/plain; charset=cp1252"); + mm.setContent("mynewcoòà ùntentâ¬Ã !", "text/plain; charset=cp1252"); mm.setHeader(RFC2822Headers.CONTENT_TYPE, "binary/octet-stream"); // mm.setHeader("Content-Transfer-Encoding","8bit"); mm.saveChanges(); @@ -227,7 +227,7 @@ public class MimeMessageTest { protected MimeMessage getMissingEncodingAddHeaderMessage() throws Exception { MimeMessage m = new MimeMessage(Session.getDefaultInstance(new Properties())); - m.setText("Test\u00E0\r\n"); + m.setText("Testà \r\n"); m.setSubject("test"); m.saveChanges(); return m; @@ -236,7 +236,7 @@ public class MimeMessageTest { protected String getMissingEncodingAddHeaderSource() { return "Subject: test\r\n" + "\r\n" - + "Test\u00E0\r\n"; + + "Testà \r\n"; } protected String getMissingEncodingAddHeaderExpected() { http://git-wip-us.apache.org/repos/asf/james-project/blob/3166aca9/server/container/util/src/main/java/org/apache/james/util/bayesian/BayesianAnalyzer.java ---------------------------------------------------------------------- diff --git a/server/container/util/src/main/java/org/apache/james/util/bayesian/BayesianAnalyzer.java b/server/container/util/src/main/java/org/apache/james/util/bayesian/BayesianAnalyzer.java index 2ebcb0c..743b886 100644 --- a/server/container/util/src/main/java/org/apache/james/util/bayesian/BayesianAnalyzer.java +++ b/server/container/util/src/main/java/org/apache/james/util/bayesian/BayesianAnalyzer.java @@ -465,9 +465,7 @@ public class BayesianAnalyzer { } } - if (Character.isLetter(ch) || ch == '-' || ch == '$' || ch == '\u20AC' // the - // EURO - // symbol + if (Character.isLetter(ch) || ch == '-' || ch == '$' || ch == 'â¬' || ch == '!' || ch == '\'') { tokenCharFound = true; previousWasDigit = false; http://git-wip-us.apache.org/repos/asf/james-project/blob/3166aca9/server/data/data-library/src/test/java/org/apache/james/sieverepository/lib/AbstractSieveRepositoryTest.java ---------------------------------------------------------------------- diff --git a/server/data/data-library/src/test/java/org/apache/james/sieverepository/lib/AbstractSieveRepositoryTest.java b/server/data/data-library/src/test/java/org/apache/james/sieverepository/lib/AbstractSieveRepositoryTest.java index b614a4c..7f5eaa4 100644 --- a/server/data/data-library/src/test/java/org/apache/james/sieverepository/lib/AbstractSieveRepositoryTest.java +++ b/server/data/data-library/src/test/java/org/apache/james/sieverepository/lib/AbstractSieveRepositoryTest.java @@ -38,7 +38,7 @@ public abstract class AbstractSieveRepositoryTest { protected static final String USER = "test"; protected static final String SCRIPT_NAME = "script"; - protected static final String SCRIPT_CONTENT = "\u0048\u0065\u006C\u006C\u006F World"; // test utf-8 + protected static final String SCRIPT_CONTENT = "Hello World"; private static final String OTHER_SCRIPT_NAME = "other_script"; private static final String OTHER_SCRIPT_CONTENT = "Other script content"; --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
