mirror of https://github.com/tc39/test262.git
54 lines
2.5 KiB
JavaScript
54 lines
2.5 KiB
JavaScript
// Copyright (C) 2015 André Bargull. All rights reserved.
|
|
// This code is governed by the BSD license found in the LICENSE file.
|
|
|
|
/*---
|
|
description: IdentityEscape for Unicode RegExp
|
|
info: |
|
|
IdentityEscape for Unicode RegExps is restricted to SyntaxCharacter and U+002F (SOLIDUS)
|
|
es6id: 21.1.2
|
|
---*/
|
|
|
|
// 21.2.1 Patterns
|
|
//
|
|
// IdentityEscape[U] ::
|
|
// [+U] SyntaxCharacter
|
|
// [+U] /
|
|
//
|
|
// SyntaxCharacter :: one of
|
|
// ^ $ \ . * + ? ( ) [ ] { } |
|
|
|
|
// IdentityEscape in AtomEscape
|
|
assert(/\^/u.test("^"), "IdentityEscape in AtomEscape: /\\^/");
|
|
assert(/\$/u.test("$"), "IdentityEscape in AtomEscape: /\\$/");
|
|
assert(/\\/u.test("\\"), "IdentityEscape in AtomEscape: /\\\\/");
|
|
assert(/\./u.test("."), "IdentityEscape in AtomEscape: /\\./");
|
|
assert(/\*/u.test("*"), "IdentityEscape in AtomEscape: /\\*/");
|
|
assert(/\+/u.test("+"), "IdentityEscape in AtomEscape: /\\+/");
|
|
assert(/\?/u.test("?"), "IdentityEscape in AtomEscape: /\\?/");
|
|
assert(/\(/u.test("("), "IdentityEscape in AtomEscape: /\\(/");
|
|
assert(/\)/u.test(")"), "IdentityEscape in AtomEscape: /\\)/");
|
|
assert(/\[/u.test("["), "IdentityEscape in AtomEscape: /\\[/");
|
|
assert(/\]/u.test("]"), "IdentityEscape in AtomEscape: /\\]/");
|
|
assert(/\{/u.test("{"), "IdentityEscape in AtomEscape: /\\{/");
|
|
assert(/\}/u.test("}"), "IdentityEscape in AtomEscape: /\\}/");
|
|
assert(/\|/u.test("|"), "IdentityEscape in AtomEscape: /\\|/");
|
|
assert(/\//u.test("/"), "IdentityEscape in AtomEscape: /\\//");
|
|
|
|
|
|
// IdentityEscape in ClassEscape
|
|
assert(/[\^]/u.test("^"), "IdentityEscape in ClassEscape: /[\\^]/");
|
|
assert(/[\$]/u.test("$"), "IdentityEscape in ClassEscape: /[\\$]/");
|
|
assert(/[\\]/u.test("\\"), "IdentityEscape in ClassEscape: /[\\\\]/");
|
|
assert(/[\.]/u.test("."), "IdentityEscape in ClassEscape: /[\\.]/");
|
|
assert(/[\*]/u.test("*"), "IdentityEscape in ClassEscape: /[\\*]/");
|
|
assert(/[\+]/u.test("+"), "IdentityEscape in ClassEscape: /[\\+]/");
|
|
assert(/[\?]/u.test("?"), "IdentityEscape in ClassEscape: /[\\?]/");
|
|
assert(/[\(]/u.test("("), "IdentityEscape in ClassEscape: /[\\(]/");
|
|
assert(/[\)]/u.test(")"), "IdentityEscape in ClassEscape: /[\\)]/");
|
|
assert(/[\[]/u.test("["), "IdentityEscape in ClassEscape: /[\\[]/");
|
|
assert(/[\]]/u.test("]"), "IdentityEscape in ClassEscape: /[\\]]/");
|
|
assert(/[\{]/u.test("{"), "IdentityEscape in ClassEscape: /[\\{]/");
|
|
assert(/[\}]/u.test("}"), "IdentityEscape in ClassEscape: /[\\}]/");
|
|
assert(/[\|]/u.test("|"), "IdentityEscape in ClassEscape: /[\\|]/");
|
|
assert(/[\/]/u.test("/"), "IdentityEscape in ClassEscape: /[\\/]/");
|