Mercurial > hg > openjdk > jdk9 > jaxp
changeset 1016:037c095ba0c3 jdk-9+141
8167478: javax/xml/jaxp/unittest/parsers/Bug6341770.java failed with "java.security.AccessControlException: access denied ("java.io.FilePermission" "sko?ice")"
Summary: Skip the test if the environment doesn't support non-ASCII for file name.
Reviewed-by: joehw
Contributed-by: Frank Yuan <frank.yuan@oracle.com>
author | fyuan |
---|---|
date | Mon, 17 Oct 2016 10:11:50 +0800 |
parents | 922f04b9fd2d |
children | 6d980e959726 |
files | test/javax/xml/jaxp/unittest/parsers/Bug6341770.java |
diffstat | 1 files changed, 22 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/test/javax/xml/jaxp/unittest/parsers/Bug6341770.java Thu Oct 13 23:02:30 2016 +0000 +++ b/test/javax/xml/jaxp/unittest/parsers/Bug6341770.java Mon Oct 17 10:11:50 2016 +0800 @@ -28,6 +28,7 @@ import java.io.File; import java.io.FileWriter; import java.io.PrintWriter; +import java.nio.file.Paths; import java.util.PropertyPermission; import javax.xml.parsers.SAXParserFactory; @@ -53,8 +54,14 @@ // naming a file "aux" would fail on windows. @Test public void testNonAsciiURI() { + if (!isNonAsciiSupported()) { + // @bug 8167478 + // if it doesn't support non-ascii, the following test is invalid even if test is passed. + System.out.println("Current environment doesn't support non-ascii, exit the test."); + return; + } try { - File dir = new File("sko\u0159ice"); + File dir = new File(ALPHA); dir.delete(); dir.mkdir(); File main = new File(dir, "main.xml"); @@ -82,4 +89,18 @@ } System.out.println("OK."); } + + private boolean isNonAsciiSupported() { + // Use Paths.get method to test if the path is valid in current environment + try { + Paths.get(ALPHA); + return true; + } catch (Exception e) { + return false; + } + } + + // Select alpha because it's a very common non-ascii character in different charsets. + // That this test can run in as many as possible environments if it's possible. + private static final String ALPHA = "\u03b1"; }