Author: markt
Date: Thu May  8 21:19:26 2014
New Revision: 1593421

URL: http://svn.apache.org/r1593421
Log:
Testing with Java 9 early access.
UTF-8 issues resolved.

Modified:
    tomcat/trunk/test/org/apache/tomcat/util/buf/TestUtf8.java

Modified: tomcat/trunk/test/org/apache/tomcat/util/buf/TestUtf8.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/util/buf/TestUtf8.java?rev=1593421&r1=1593420&r2=1593421&view=diff
==============================================================================
--- tomcat/trunk/test/org/apache/tomcat/util/buf/TestUtf8.java (original)
+++ tomcat/trunk/test/org/apache/tomcat/util/buf/TestUtf8.java Thu May  8 
21:19:26 2014
@@ -69,6 +69,9 @@ public class TestUtf8 {
         } catch (Exception e) {
             // Ignore
         }
+        // TODO Identify a class to test for Java 9
+        //javaVersion = 9;
+
         Utf8TestCase testCase = null;
 
         TEST_CASES.add(new Utf8TestCase(
@@ -96,12 +99,17 @@ public class TestUtf8 {
                 new int[] {0xF0, 0x90, 0x90, 0x80},
                 -1,
                 "\uD801\uDC00"));
-        // JVM decoder does not report error until all 4 bytes are available
-        TEST_CASES.add(new Utf8TestCase(
+        // Java 7/8 JVM decoder does not report error until all 4 bytes are
+        // available
+        testCase = new Utf8TestCase(
                 "Invalid code point - out of range",
                 new int[] {0x41, 0xF4, 0x90, 0x80, 0x80, 0x41},
                 2,
-                "A\uFFFD\uFFFD\uFFFD\uFFFDA").addForJvm(ERROR_POS_PLUS2));
+                "A\uFFFD\uFFFD\uFFFD\uFFFDA");
+        if (javaVersion < 9) {
+            testCase.addForJvm(ERROR_POS_PLUS2);
+        }
+        TEST_CASES.add(testCase);
 
         // Java 7 JVM decoder does not report error until all 2 bytes are 
available
         testCase = new Utf8TestCase(
@@ -125,12 +133,18 @@ public class TestUtf8 {
         }
         TEST_CASES.add(testCase);
 
-        // JVM decoder does not report error until all 4 bytes are available
-        TEST_CASES.add(new Utf8TestCase(
+        // Java 7/8 JVM decoder does not report error until all 4 bytes are
+        // available
+        testCase = new Utf8TestCase(
                 "Valid sequence padded from one byte to four",
                 new int[] {0x41, 0xF0, 0x80, 0x80, 0xC1, 0x41},
                 2,
-                "A\uFFFD\uFFFD\uFFFD\uFFFDA").addForJvm(ERROR_POS_PLUS2));
+                "A\uFFFD\uFFFD\uFFFD\uFFFDA");
+        if (javaVersion < 9) {
+            testCase.addForJvm(ERROR_POS_PLUS2);
+        }
+        TEST_CASES.add(testCase);
+
         TEST_CASES.add(new Utf8TestCase(
                 "Invalid one byte 1111 1111",
                 new int[] {0x41, 0xFF, 0x41},
@@ -333,26 +347,46 @@ public class TestUtf8 {
                 new int[] {0x61, 0xE1, 0x80, 0xC0, 0x61},
                 3,
                 "a\uFFFD\uFFFDa"));
-        TEST_CASES.add(new Utf8TestCase(
+        testCase = new Utf8TestCase(
                 "Four bytes, U+0000 zero-padded",
                 new int[] {0x61, 0xF0, 0x80, 0x80, 0x80, 0x61},
                 2,
-                "a\uFFFD\uFFFD\uFFFD\uFFFDa").addForJvm(ERROR_POS_PLUS2));
-        TEST_CASES.add(new Utf8TestCase(
+                "a\uFFFD\uFFFD\uFFFD\uFFFDa");
+        if (javaVersion < 9) {
+            testCase.addForJvm(ERROR_POS_PLUS2);
+        }
+        TEST_CASES.add(testCase);
+
+        testCase = new Utf8TestCase(
                 "Four bytes, U+007F zero-padded",
                 new int[] {0x61, 0xF0, 0x80, 0x81, 0xBF, 0x61},
                 2,
-                "a\uFFFD\uFFFD\uFFFD\uFFFDa").addForJvm(ERROR_POS_PLUS2));
-        TEST_CASES.add(new Utf8TestCase(
+                "a\uFFFD\uFFFD\uFFFD\uFFFDa");
+        if (javaVersion < 9) {
+            testCase.addForJvm(ERROR_POS_PLUS2);
+        }
+        TEST_CASES.add(testCase);
+
+        testCase = new Utf8TestCase(
                 "Four bytes, U+07FF zero-padded",
                 new int[] {0x61, 0xF0, 0x80, 0x9F, 0xBF, 0x61},
                 2,
-                "a\uFFFD\uFFFD\uFFFD\uFFFDa").addForJvm(ERROR_POS_PLUS2));
-        TEST_CASES.add(new Utf8TestCase(
+                "a\uFFFD\uFFFD\uFFFD\uFFFDa");
+        if (javaVersion < 9) {
+            testCase.addForJvm(ERROR_POS_PLUS2);
+        }
+        TEST_CASES.add(testCase);
+
+        testCase = new Utf8TestCase(
                 "Four bytes, U+FFFF zero-padded",
                 new int[] {0x61, 0xF0, 0x8F, 0xBF, 0xBF, 0x61},
                 2,
-                "a\uFFFD\uFFFD\uFFFD\uFFFDa").addForJvm(ERROR_POS_PLUS2));
+                "a\uFFFD\uFFFD\uFFFD\uFFFDa");
+        if (javaVersion < 9) {
+            testCase.addForJvm(ERROR_POS_PLUS2);
+        }
+        TEST_CASES.add(testCase);
+
         TEST_CASES.add(new Utf8TestCase(
                 "Four bytes, all 1's",
                 new int[] {0x61, 0xFF, 0xFF, 0xFF, 0xFF, 0x61},



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to