mirror of https://github.com/tc39/test262.git
Adds syntax tests for the RegExp modifiers proposal
Based on PR #3807 which had generated these tests from templates, but was stuck due to issue #3808. Co-Authored-By: Guillaume Emont <guijemont@igalia.com> Co-Authored-By: Ioanna M. Dimitriou H <idimitriou@igalia.com>
This commit is contained in:
parent
46871db0c2
commit
49a58a4716
|
@ -0,0 +1,16 @@
|
|||
// Copyright (C) 2024 Igalia, S.L. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
|
||||
esid: sec-patterns-static-semantics-early-errors
|
||||
features: [regexp-modifiers]
|
||||
info: |
|
||||
Atom :: ( ? RegularExpresisonFlags : Disjunction )
|
||||
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
|
||||
|
||||
---*/
|
||||
|
||||
assert.throws(SyntaxError, function () {
|
||||
RegExp("(?ii:a)", "");
|
||||
}, 'RegExp("(?ii:a)", ""): ');
|
|
@ -0,0 +1,16 @@
|
|||
// Copyright (C) 2024 Igalia, S.L. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
|
||||
esid: sec-patterns-static-semantics-early-errors
|
||||
features: [regexp-modifiers]
|
||||
info: |
|
||||
Atom :: ( ? RegularExpresisonFlags : Disjunction )
|
||||
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
|
||||
|
||||
---*/
|
||||
|
||||
assert.throws(SyntaxError, function () {
|
||||
RegExp("(?imsi:a)", "");
|
||||
}, 'RegExp("(?imsi:a)", ""): ');
|
|
@ -0,0 +1,16 @@
|
|||
// Copyright (C) 2024 Igalia, S.L. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
|
||||
esid: sec-patterns-static-semantics-early-errors
|
||||
features: [regexp-modifiers]
|
||||
info: |
|
||||
Atom :: ( ? RegularExpresisonFlags : Disjunction )
|
||||
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
|
||||
|
||||
---*/
|
||||
|
||||
assert.throws(SyntaxError, function () {
|
||||
RegExp("(?1:a)", "");
|
||||
}, 'RegExp("(?1:a)", ""): ');
|
|
@ -0,0 +1,16 @@
|
|||
// Copyright (C) 2024 Igalia, S.L. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
|
||||
esid: sec-patterns-static-semantics-early-errors
|
||||
features: [regexp-modifiers]
|
||||
info: |
|
||||
Atom :: ( ? RegularExpresisonFlags : Disjunction )
|
||||
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
|
||||
|
||||
---*/
|
||||
|
||||
assert.throws(SyntaxError, function () {
|
||||
RegExp("(?iͥ:a)", "");
|
||||
}, 'RegExp("(?iͥ:a)", ""): ');
|
|
@ -0,0 +1,16 @@
|
|||
// Copyright (C) 2024 Igalia, S.L. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
|
||||
esid: sec-patterns-static-semantics-early-errors
|
||||
features: [regexp-modifiers]
|
||||
info: |
|
||||
Atom :: ( ? RegularExpresisonFlags : Disjunction )
|
||||
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
|
||||
|
||||
---*/
|
||||
|
||||
assert.throws(SyntaxError, function () {
|
||||
RegExp("(?mͫ:a)", "");
|
||||
}, 'RegExp("(?mͫ:a)", ""): ');
|
|
@ -0,0 +1,16 @@
|
|||
// Copyright (C) 2024 Igalia, S.L. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
|
||||
esid: sec-patterns-static-semantics-early-errors
|
||||
features: [regexp-modifiers]
|
||||
info: |
|
||||
Atom :: ( ? RegularExpresisonFlags : Disjunction )
|
||||
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
|
||||
|
||||
---*/
|
||||
|
||||
assert.throws(SyntaxError, function () {
|
||||
RegExp("(?s̀:a)", "");
|
||||
}, 'RegExp("(?s̀:a)", ""): ');
|
|
@ -0,0 +1,16 @@
|
|||
// Copyright (C) 2024 Igalia, S.L. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
|
||||
esid: sec-patterns-static-semantics-early-errors
|
||||
features: [regexp-modifiers]
|
||||
info: |
|
||||
Atom :: ( ? RegularExpresisonFlags : Disjunction )
|
||||
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
|
||||
|
||||
---*/
|
||||
|
||||
assert.throws(SyntaxError, function () {
|
||||
RegExp("(?d:a)", "");
|
||||
}, 'RegExp("(?d:a)", ""): ');
|
|
@ -0,0 +1,16 @@
|
|||
// Copyright (C) 2024 Igalia, S.L. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
|
||||
esid: sec-patterns-static-semantics-early-errors
|
||||
features: [regexp-modifiers]
|
||||
info: |
|
||||
Atom :: ( ? RegularExpresisonFlags : Disjunction )
|
||||
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
|
||||
|
||||
---*/
|
||||
|
||||
assert.throws(SyntaxError, function () {
|
||||
RegExp("(?g:a)", "");
|
||||
}, 'RegExp("(?g:a)", ""): ');
|
|
@ -0,0 +1,16 @@
|
|||
// Copyright (C) 2024 Igalia, S.L. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
description: It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code point other than i, m, or s, or if it contains the same code point more than once. (regular expression flags)
|
||||
esid: sec-patterns-static-semantics-early-errors
|
||||
features: [regexp-modifiers]
|
||||
info: |
|
||||
Atom :: ( ? RegularExpresisonFlags : Disjunction )
|
||||
It is a Syntax Error if the source text matched by RegularExpressionFlags contains any code points other than "i", "m", "s", or if it contains the same code point more than once.
|
||||
|
||||
---*/
|
||||
|
||||
assert.throws(SyntaxError, function () {
|
||||
RegExp("(?s |