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 3 // found in the LICENSE file. 4 5 // Flags: --harmony-regexp-property 6 7 function t(re, s) { assertTrue(re.test(s)); } 8 function f(re, s) { assertFalse(re.test(s)); } 9 10 t(/\p{Block=ASCII}+/u, "."); 11 t(/\p{Block=ASCII}+/u, "supercalifragilisticexpialidocious"); 12 t(/\p{Block=Basic_Latin}+/u, "."); 13 t(/\p{Block=Basic_Latin}+/u, "supercalifragilisticexpialidocious"); 14 15 t(/\p{blk=CJK}+/u, ""); 16 t(/\p{blk=CJK_Unified_Ideographs}+/u, ""); 17 f(/\p{blk=CJK}+/u, ""); 18 f(/\p{blk=CJK_Unified_Ideographs}+/u, 19 "Something is rotten in the state of Denmark"); 20 21 t(/\p{blk=Latin_1}+/u, "Wie froh bin ich, da ich weg bin!"); 22 f(/\p{blk=Latin_1_Supplement}+/u, ""); 23 f(/\p{blk=Latin_1_Sup}+/u, ""); 24 25 t(/\p{blk=Hiragana}/u, ""); 26 t(/\p{sc=Hiragana}/u, "\u{1b001}"); // This refers to the script "Hiragana". 27 f(/\p{blk=Hiragana}/u, "\u{1b001}"); // This refers to the block "Hiragana". 28 29 t(/\p{blk=Greek_And_Coptic}/u, 30 " , , , "); 31 t(/\p{blk=Greek}/u, " "); 32 33 assertThrows("/\\p{In}/u"); 34 assertThrows("/\\pI/u"); 35 assertThrows("/\\p{I}/u"); 36 assertThrows("/\\p{CJK}/u"); 37