Files
sausage/userland/qjs/source/tests/bug1598.js
T
surma d44f1d9677 Build separate native and WASI pipelines with shared multicall names
Checkpoint before integration and package validation.

Assisted-by: SurmAgent:unknown [read] [edit] [bash]
2026-11-12 09:36:27 +00:00

22 lines
1.1 KiB
JavaScript

import { assert, assertThrows } from "./assert.js";
// Test ClassSetReservedPunctuators: &, -, !, #, %, ,, :, ;, <, =, >, @, `, and ~
assert(new RegExp("[\\q{\\-}]", "v").test("-"), true);
assert(new RegExp("[\\q{\\&}]", "v").test("&"), true);
assert(new RegExp("[\\q{\\!}]", "v").test("!"), true);
assert(new RegExp("[\\q{\\#}]", "v").test("#"), true);
assert(new RegExp("[\\q{\\%}]", "v").test("%"), true);
assert(new RegExp("[\\q{\\,}]", "v").test(","), true);
assert(new RegExp("[\\q{\\:}]", "v").test(":"), true);
assert(new RegExp("[\\q{\\;}]", "v").test(";"), true);
assert(new RegExp("[\\q{\\<}]", "v").test("<"), true);
assert(new RegExp("[\\q{\\=}]", "v").test("="), true);
assert(new RegExp("[\\q{\\>}]", "v").test(">"), true);
assert(new RegExp("[\\q{\\@}]", "v").test("@"), true);
assert(new RegExp("[\\q{\\`}]", "v").test("`"), true);
assert(new RegExp("[\\q{\\~}]", "v").test("~"), true);
// Also test negative cases
assertThrows(SyntaxError, () => new RegExp("\\-", "v").test("-"));
assertThrows(SyntaxError, () => new RegExp("\\%", "v").test("%"));
assertThrows(SyntaxError, () => new RegExp("[\\&]", "u").test("&"));