1 // Copyright 2011 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 assertThrows("/[\\p]/u"); 8 assertThrows("/[\\p{garbage}]/u"); 9 assertThrows("/[\\p{}]/u"); 10 assertThrows("/[\\p{]/u"); 11 assertThrows("/[\\p}]/u"); 12 13 assertTrue(/^[\p{Lu}\p{Ll}]+$/u.test("ABCabc")); 14 assertTrue(/^[\p{Lu}-\p{Ll}]+$/u.test("ABC-abc")); 15 assertFalse(/^[\P{Lu}\p{Ll}]+$/u.test("ABCabc")); 16 assertTrue(/^[\P{Lu}\p{Ll}]+$/u.test("abc")); 17 assertTrue(/^[\P{Lu}]+$/u.test("abc123")); 18 assertFalse(/^[\P{Lu}]+$/u.test("XYZ")); 19 assertTrue(/[\p{Math}]/u.test("+")); 20 assertTrue(/[\P{Bidi_M}]/u.test(" ")); 21 assertTrue(/[\p{Hex}]/u.test("A")); 22 23 assertTrue(/^[^\P{Lu}]+$/u.test("XYZ")); 24 assertFalse(/^[^\p{Lu}\p{Ll}]+$/u.test("abc")); 25 assertFalse(/^[^\p{Lu}\p{Ll}]+$/u.test("ABC")); 26 assertTrue(/^[^\p{Lu}\p{Ll}]+$/u.test("123")); 27 assertTrue(/^[^\p{Lu}\P{Ll}]+$/u.test("abc")); 28