mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-27 23:04:50 +02:00
8284856: Add a test case for checking UnicodeScript entity numbers
Reviewed-by: iris, smarks
This commit is contained in:
parent
a5bb210589
commit
eb9c457b41
2 changed files with 13 additions and 5 deletions
|
@ -5285,7 +5285,7 @@ class Character implements java.io.Serializable, Comparable<Character>, Constabl
|
||||||
/**
|
/**
|
||||||
* Unicode script "Unknown".
|
* Unicode script "Unknown".
|
||||||
*/
|
*/
|
||||||
UNKNOWN;
|
UNKNOWN; // must be the last enum constant for calculating the size of "aliases" hash map.
|
||||||
|
|
||||||
private static final int[] scriptStarts = {
|
private static final int[] scriptStarts = {
|
||||||
0x0000, // 0000..0040; COMMON
|
0x0000, // 0000..0040; COMMON
|
||||||
|
@ -8571,7 +8571,7 @@ class Character implements java.io.Serializable, Comparable<Character>, Constabl
|
||||||
|
|
||||||
private static final HashMap<String, Character.UnicodeScript> aliases;
|
private static final HashMap<String, Character.UnicodeScript> aliases;
|
||||||
static {
|
static {
|
||||||
aliases = HashMap.newHashMap(162);
|
aliases = HashMap.newHashMap(UNKNOWN.ordinal() + 1);
|
||||||
aliases.put("ADLM", ADLAM);
|
aliases.put("ADLM", ADLAM);
|
||||||
aliases.put("AGHB", CAUCASIAN_ALBANIAN);
|
aliases.put("AGHB", CAUCASIAN_ALBANIAN);
|
||||||
aliases.put("AHOM", AHOM);
|
aliases.put("AHOM", AHOM);
|
||||||
|
|
|
@ -23,9 +23,10 @@
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @test
|
* @test
|
||||||
* @bug 8080535 8191410 8215194 8221431 8239383 8268081 8283465
|
* @bug 8080535 8191410 8215194 8221431 8239383 8268081 8283465 8284856
|
||||||
* @summary Check if the NUM_ENTITIES field reflects the correct number
|
* @summary Check if the NUM_ENTITIES field reflects the correct number
|
||||||
* of Character.UnicodeBlock constants.
|
* of Character.UnicodeBlock constants. Also checks the size of
|
||||||
|
* Character.UnicodeScript's "aliases" map.
|
||||||
* @modules java.base/java.lang:open
|
* @modules java.base/java.lang:open
|
||||||
* @run testng NumberEntities
|
* @run testng NumberEntities
|
||||||
*/
|
*/
|
||||||
|
@ -38,7 +39,7 @@ import java.util.Map;
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public class NumberEntities {
|
public class NumberEntities {
|
||||||
public void test_NumberEntities() throws Throwable {
|
public void test_UnicodeBlock_NumberEntities() throws Throwable {
|
||||||
// The number of entries in Character.UnicodeBlock.map.
|
// The number of entries in Character.UnicodeBlock.map.
|
||||||
// See src/java.base/share/classes/java/lang/Character.java
|
// See src/java.base/share/classes/java/lang/Character.java
|
||||||
Field n = Character.UnicodeBlock.class.getDeclaredField("NUM_ENTITIES");
|
Field n = Character.UnicodeBlock.class.getDeclaredField("NUM_ENTITIES");
|
||||||
|
@ -47,4 +48,11 @@ public class NumberEntities {
|
||||||
m.setAccessible(true);
|
m.setAccessible(true);
|
||||||
assertEquals(((Map)m.get(null)).size(), n.getInt(null));
|
assertEquals(((Map)m.get(null)).size(), n.getInt(null));
|
||||||
}
|
}
|
||||||
|
public void test_UnicodeScript_aliases() throws Throwable {
|
||||||
|
// The number of entries in Character.UnicodeScript.aliases.
|
||||||
|
// See src/java.base/share/classes/java/lang/Character.java
|
||||||
|
Field aliases = Character.UnicodeScript.class.getDeclaredField("aliases");
|
||||||
|
aliases.setAccessible(true);
|
||||||
|
assertEquals(((Map)aliases.get(null)).size(), Character.UnicodeScript.UNKNOWN.ordinal() + 1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue