test/jdk/java/lang/System/NonAnsiFileEncodingTest.java
author amlu
Mon, 05 Feb 2018 11:12:09 +0800
changeset 48742 364944ba4e2f
permissions -rw-r--r--
8195981: Move some tests to OpenJDK for jdk_lang test group Reviewed-by: alanb, mchung
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
48742
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
     1
/*
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
     2
 * Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
     3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
     4
 *
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
     5
 * This code is free software; you can redistribute it and/or modify it
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
     6
 * under the terms of the GNU General Public License version 2 only, as
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
     7
 * published by the Free Software Foundation.
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
     8
 *
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
     9
 * This code is distributed in the hope that it will be useful, but WITHOUT
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    10
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    11
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    12
 * version 2 for more details (a copy is included in the LICENSE file that
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    13
 * accompanied this code).
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    14
 *
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    15
 * You should have received a copy of the GNU General Public License version
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    16
 * 2 along with this work; if not, write to the Free Software Foundation,
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    17
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    18
 *
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    19
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    20
 * or visit www.oracle.com if you need additional information or have any
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    21
 * questions.
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    22
 */
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    23
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    24
/*
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    25
 * @test
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    26
 * @bug 4459099
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    27
 * @key i18n
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    28
 * @summary Tests non ANSI code page locales set default file encoding
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    29
 * to "utf-8".  This test must be run on Windows 2K/XP in one of Armenian,
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    30
 * Georgian, Hindi, Punjabi, Gujarati, Tamil, Telugu, Kannada, Marathi,
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    31
 * or Sanskrit languages.
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    32
 */
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    33
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    34
public class NonAnsiFileEncodingTest {
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    35
    public static void main(String[] s)  {
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    36
        String OS = System.getProperty("os.name");
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    37
        String lang = System.getProperty("user.language");
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    38
        String fileenc = System.getProperty("file.encoding");
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    39
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    40
        if (!(OS.equals("Windows 2000") || OS.equals("Windows XP"))) {
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    41
            System.out.println("This test is not meaningful on the platform \"" + OS + "\".");
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    42
            return;
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    43
        }
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    44
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    45
        if (!(lang.equals("hy") ||      // Armenian
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    46
              lang.equals("ka") ||      // Georgian
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    47
              lang.equals("hi") ||      // Hindi
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    48
              lang.equals("pa") ||      // Punjabi
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    49
              lang.equals("gu") ||      // Gujarati
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    50
              lang.equals("ta") ||      // Tamil
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    51
              lang.equals("te") ||      // Telugu
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    52
              lang.equals("kn") ||      // Kannada
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    53
              lang.equals("mr") ||      // Marathi
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    54
              lang.equals("sa"))) {     // Sanskrit
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    55
            System.out.println("Windows' locale settings for this test is incorrect.  Select one of \"Armenian\", \"Georgian\", \"Hindi\", \"Punjabi\", \"Gujarati\", \"Tamil\", \"Telugu\", \"Kannada\", \"Marathi\", or \"Sanskrit\" for the user locale, and \"English(United States)\" for the system default locale using the Control Panel.");
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    56
            return;
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    57
        }
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    58
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    59
        if (!fileenc.equals("utf-8")) {
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    60
            throw new RuntimeException("file.encoding is incorrectly set to \"" + fileenc + "\".  Should be \"utf-8\".");
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    61
        }
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    62
    }
364944ba4e2f 8195981: Move some tests to OpenJDK for jdk_lang test group
amlu
parents:
diff changeset
    63
}