test/jdk/java/text/Normalizer/SquareEraCharacterTest.java
author herrick
Mon, 14 Oct 2019 14:36:45 -0400
branchJDK-8200758-branch
changeset 58584 910b14f4fe3a
parent 55013 8dae495a59e7
permissions -rw-r--r--
8232042: [macos] Installation fails if application name contains spaces Submitted-by: almatvee Reviewed-by: aherrick, asemenyuk
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
55013
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
     1
/*
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
     2
 * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
     3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
     4
 *
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
     5
 * This code is free software; you can redistribute it and/or modify it
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
     6
 * under the terms of the GNU General Public License version 2 only, as
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
     7
 * published by the Free Software Foundation.
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
     8
 *
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
     9
 * This code is distributed in the hope that it will be useful, but WITHOUT
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    10
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    11
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    12
 * version 2 for more details (a copy is included in the LICENSE file that
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    13
 * accompanied this code).
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    14
 *
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    15
 * You should have received a copy of the GNU General Public License version
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    16
 * 2 along with this work; if not, write to the Free Software Foundation,
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    17
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    18
 *
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    19
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    20
 * or visit www.oracle.com if you need additional information or have any
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    21
 * questions.
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    22
 */
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    23
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    24
 /*
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    25
 * @test
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    26
 * @bug 8221431
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    27
 * @summary Tests decomposition of Japanese square era characters.
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    28
 * @run testng/othervm SquareEraCharacterTest
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    29
 */
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    30
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    31
import static org.testng.Assert.assertEquals;
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    32
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    33
import java.text.Normalizer;
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    34
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    35
import org.testng.annotations.DataProvider;
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    36
import org.testng.annotations.Test;
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    37
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    38
@Test
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    39
public class SquareEraCharacterTest {
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    40
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    41
    @DataProvider
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    42
    Object[][] squareEras() {
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    43
        return new Object[][] {
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    44
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    45
            // square era character, expected decomposed string
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    46
            {'\u337e',  "\u660e\u6cbb"},    // Meizi
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    47
            {'\u337d',  "\u5927\u6b63"},    // Taisho
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    48
            {'\u337c',  "\u662d\u548c"},    // Showa
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    49
            {'\u337b',  "\u5e73\u6210"},    // Heisei
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    50
            {'\u32ff',  "\u4ee4\u548c"},    // Reiwa
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    51
        };
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    52
    }
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    53
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    54
    @Test(dataProvider="squareEras")
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    55
    public void test_normalize(char squareChar, String expected) {
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    56
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    57
        assertEquals(
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    58
            Normalizer.normalize(Character.toString(squareChar), Normalizer.Form.NFKD),
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    59
            expected,
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    60
            "decomposing " + Character.getName(squareChar) + ".");
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    61
    }
8dae495a59e7 8221431: Support for Unicode 12.1
naoto
parents:
diff changeset
    62
}