summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorluccioman <luccioman@users.noreply.github.com>2017-06-26 17:33:56 +0200
committerluccioman <luccioman@users.noreply.github.com>2017-06-26 17:33:56 +0200
commit286f3018bd1339d7eda3cf2ffcd663dd2dc562f7 (patch)
tree2c07fc03d5e3a79bae844891cb580eb9cd92fd36 /test
parent319231a458b5d92b78a693772079c88d1d272fce (diff)
Made mime type and extension normalization locale independent.
Previously, upper cased mime type was incorrectly normalized when the default locale is Turkish.
Diffstat (limited to 'test')
-rw-r--r--test/java/net/yacy/document/TextParserTest.java55
1 files changed, 55 insertions, 0 deletions
diff --git a/test/java/net/yacy/document/TextParserTest.java b/test/java/net/yacy/document/TextParserTest.java
new file mode 100644
index 000000000..2d874d592
--- /dev/null
+++ b/test/java/net/yacy/document/TextParserTest.java
@@ -0,0 +1,55 @@
+// TextParserTest.java
+// ---------------------------
+// Copyright 2017 by luccioman; https://github.com/luccioman
+//
+// This is a part of YaCy, a peer-to-peer based web search engine
+//
+// LICENSE
+//
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; either version 2 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+package net.yacy.document;
+
+import static org.junit.Assert.*;
+
+import java.util.Locale;
+
+import org.junit.Test;
+
+/**
+ * Unit tests for the {@link TextParser} class.
+ *
+ * @author luccioman
+ *
+ */
+public class TextParserTest {
+
+ /**
+ * Test the TextParser.supportsMime() consistency with available locales.
+ * Possible failure case : with the Turkish ("tr") language, 'I' lower cased
+ * does not becomes 'i' but '\u005Cu0131' (the latin small letter 'ı'
+ * character).
+ */
+ @Test
+ public void testSupportsMimeLocaleConsistency() {
+ for (Locale locale : Locale.getAvailableLocales()) {
+ Locale.setDefault(locale);
+ for (String mimeType : TextParser.supportedMimeTypes()) {
+ assertNull(locale + " " + mimeType, TextParser.supportsMime(mimeType.toUpperCase(Locale.ROOT)));
+ }
+ }
+ }
+
+}