OLD | NEW |
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Flags: --harmony-regexp-property | 5 // Flags: --harmony-regexp-property |
6 | 6 |
7 function t(re, s) { assertTrue(re.test(s)); } | 7 function t(re, s) { assertTrue(re.test(s)); } |
8 function f(re, s) { assertFalse(re.test(s)); } | 8 function f(re, s) { assertFalse(re.test(s)); } |
9 | 9 |
10 t(/\p{Bidi_Control}+/u, "\u200E"); | 10 t(/\p{Bidi_Control}+/u, "\u200E"); |
11 f(/\p{Bidi_C}+/u, "On a dark desert highway, cool wind in my hair"); | 11 f(/\p{Bidi_C}+/u, "On a dark desert highway, cool wind in my hair"); |
12 t(/\p{AHex}+/u, "DEADBEEF"); | 12 t(/\p{AHex}+/u, "DEADBEEF"); |
13 t(/\p{Alphabetic}+/u, "abcdefg"); | 13 t(/\p{Alphabetic}+/u, "abcdefg"); |
14 t(/\P{Alphabetic}+/u, "1234"); | 14 t(/\P{Alphabetic}+/u, "1234"); |
15 t(/\p{White_Space}+/u, "\u00A0"); | 15 t(/\p{White_Space}+/u, "\u00A0"); |
16 t(/\p{Uppercase}+/u, "V"); | 16 t(/\p{Uppercase}+/u, "V"); |
17 f(/\p{Lower}+/u, "U"); | 17 f(/\p{Lower}+/u, "U"); |
18 t(/\p{Ideo}+/u, "字"); | 18 t(/\p{Ideo}+/u, "字"); |
19 f(/\p{Ideo}+/u, "x"); | 19 f(/\p{Ideo}+/u, "x"); |
| 20 t(/\p{Noncharacter_Code_Point}+/u, "\uFDD0"); |
| 21 t(/\p{Default_Ignorable_Code_Point}+/u, "\u00AD"); |
| 22 t(/\p{ASCII}+/u, "a"); |
| 23 f(/\p{ASCII}+/u, "äöü"); |
| 24 t(/\p{ID_Start}+/u, "a"); |
| 25 f(/\p{ID_Start}+/u, "1\\"); |
| 26 t(/\p{ID_Continue}+/u, "1"); |
| 27 f(/\p{ID_Continue}+/u, "%\\"); |
| 28 t(/\p{Join_Control}+/u, "\u200c"); |
| 29 f(/\p{Join_Control}+/u, "a1"); |
| 30 t(/\p{Emoji_Presentation}+/u, "\u{1F308}"); |
| 31 f(/\p{Emoji_Presentation}+/u, "x"); |
| 32 t(/\p{Emoji_Modifier}+/u, "\u{1F3FE}"); |
| 33 f(/\p{Emoji_Modifier}+/u, "x"); |
| 34 t(/\p{Emoji_Modifier_Base}+/u, "\u{1F6CC}"); |
| 35 f(/\p{Emoji_Modifier_Base}+/u, "x"); |
20 | 36 |
21 assertThrows("/\\p{Hiragana}/u"); | 37 assertThrows("/\\p{Hiragana}/u"); |
22 assertThrows("/\\p{Bidi_Class}/u"); | 38 assertThrows("/\\p{Bidi_Class}/u"); |
23 assertThrows("/\\p{Bidi_C=False}/u"); | 39 assertThrows("/\\p{Bidi_C=False}/u"); |
24 assertThrows("/\\P{Bidi_Control=Y}/u"); | 40 assertThrows("/\\P{Bidi_Control=Y}/u"); |
25 assertThrows("/\\p{AHex=Yes}/u"); | 41 assertThrows("/\\p{AHex=Yes}/u"); |
OLD | NEW |