mirror of
https://github.com/tc39/test262.git
synced 2025-04-08 19:35:28 +02:00
parent
23925f86a0
commit
c7ac073e73
@ -1,21 +0,0 @@
|
||||
// Copyright 2017 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Binary properties with an explicit value must throw in Unicode property
|
||||
escapes (even if the value is valid).
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
assert.throws.early(SyntaxError, "/\\p{ASCII=Yes}/u");
|
||||
assert.throws.early(SyntaxError, "/\\p{ASCII=Y}/u");
|
||||
assert.throws.early(SyntaxError, "/\\p{ASCII=T}/u");
|
||||
|
||||
assert.throws.early(SyntaxError, "/\\P{ASCII=No}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{ASCII=N}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{ASCII=F}/u");
|
||||
|
||||
assert.throws.early(SyntaxError, "/\\p{ASCII=Invalid}/u");
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Binary properties with an explicit value must throw in Unicode property
|
||||
escapes (even if the value is valid).
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{ASCII=F}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Binary properties with an explicit value must throw in Unicode property
|
||||
escapes (even if the value is valid).
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{ASCII=F}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Binary properties with an explicit value must throw in Unicode property
|
||||
escapes (even if the value is valid).
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{ASCII=Invalid}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Binary properties with an explicit value must throw in Unicode property
|
||||
escapes (even if the value is valid).
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{ASCII=Invalid}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Binary properties with an explicit value must throw in Unicode property
|
||||
escapes (even if the value is valid).
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{ASCII=N}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Binary properties with an explicit value must throw in Unicode property
|
||||
escapes (even if the value is valid).
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{ASCII=N}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Binary properties with an explicit value must throw in Unicode property
|
||||
escapes (even if the value is valid).
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{ASCII=No}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Binary properties with an explicit value must throw in Unicode property
|
||||
escapes (even if the value is valid).
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{ASCII=No}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Binary properties with an explicit value must throw in Unicode property
|
||||
escapes (even if the value is valid).
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{ASCII=T}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Binary properties with an explicit value must throw in Unicode property
|
||||
escapes (even if the value is valid).
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{ASCII=T}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Binary properties with an explicit value must throw in Unicode property
|
||||
escapes (even if the value is valid).
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{ASCII=Y}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Binary properties with an explicit value must throw in Unicode property
|
||||
escapes (even if the value is valid).
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{ASCII=Y}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Binary properties with an explicit value must throw in Unicode property
|
||||
escapes (even if the value is valid).
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{ASCII=Yes}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Binary properties with an explicit value must throw in Unicode property
|
||||
escapes (even if the value is valid).
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{ASCII=Yes}/u;
|
@ -0,0 +1,20 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
NonemptyClassRanges :: ClassAtom - ClassAtom ClassRanges
|
||||
|
||||
It is a Syntax Error if IsCharacterClass of the first ClassAtom is
|
||||
true or IsCharacterClass of the second ClassAtom is true.
|
||||
esid: sec-patterns-static-semantics-early-errors
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/[--\p{Hex}]/u;
|
@ -0,0 +1,20 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
NonemptyClassRangesNoDash :: ClassAtomNoDash - ClassAtom ClassRanges
|
||||
|
||||
It is a Syntax Error if IsCharacterClass of ClassAtomNoDash is true or
|
||||
IsCharacterClass of ClassAtom is true.
|
||||
esid: sec-patterns-static-semantics-early-errors
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/[\uFFFF-\p{Hex}]/u;
|
@ -0,0 +1,20 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
NonemptyClassRangesNoDash :: ClassAtomNoDash - ClassAtom ClassRanges
|
||||
|
||||
It is a Syntax Error if IsCharacterClass of ClassAtomNoDash is true or
|
||||
IsCharacterClass of ClassAtom is true.
|
||||
esid: sec-patterns-static-semantics-early-errors
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/[\p{Hex}-\uFFFF]/u;
|
@ -0,0 +1,20 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
NonemptyClassRanges :: ClassAtom - ClassAtom ClassRanges
|
||||
|
||||
It is a Syntax Error if IsCharacterClass of the first ClassAtom is
|
||||
true or IsCharacterClass of the second ClassAtom is true.
|
||||
esid: sec-patterns-static-semantics-early-errors
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/[\p{Hex}--]/u;
|
@ -1,4 +1,4 @@
|
||||
// Copyright 2017 Mathias Bynens. All rights reserved.
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
@ -10,17 +10,7 @@ features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
/[\p{Hex}]/u;
|
||||
assert.throws(
|
||||
SyntaxError,
|
||||
() => /[\p{Hex}-\uFFFF]/u,
|
||||
// See step 1 of https://tc39.github.io/ecma262/#sec-runtime-semantics-characterrange-abstract-operation.
|
||||
'property escape at start of character class range should throw if it expands to multiple characters'
|
||||
);
|
||||
assert.throws.early(SyntaxError, "/[\\p{}]/u");
|
||||
assert.throws.early(SyntaxError, "/[\\p{invalid}]/u");
|
||||
assert.throws.early(SyntaxError, "/[\\p{]/u");
|
||||
assert.throws.early(SyntaxError, "/[\\p{]}/u");
|
||||
assert.throws.early(SyntaxError, "/[\\p}]/u");
|
||||
|
||||
assert(
|
||||
/[\p{Hex}\P{Hex}]/u.test('\u{1D306}'),
|
||||
'multiple property escapes in a single character class should be supported'
|
||||
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{InAdlam}/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{InAdlam}/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{InAdlam}/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{InAdlam}/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{InScript=Adlam}/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{InScript=Adlam}/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{IsScript=Adlam}/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{IsScript=Adlam}/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{^General_Category=Letter}/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{^General_Category=Letter}/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/[\p{}]/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/[\P{}]/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/[\P{invalid}]/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/[\p{invalid}]/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\PL/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\pL/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{=Letter}/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{=Letter}/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{General_Category:Letter}/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{=}/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{=}/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{General_Category:Letter}/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P}/u;
|
@ -0,0 +1,21 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
This tests violations of the grammar starting here:
|
||||
|
||||
CharacterClassEscape[U]::
|
||||
[+U] p{ UnicodePropertyValueExpression }
|
||||
[+U] P{ UnicodePropertyValueExpression }
|
||||
esid: prod-CharacterClassEscape
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p}/u;
|
@ -1,47 +0,0 @@
|
||||
// Copyright 2017 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Unicode property escapes must not support non-standard grammar extensions.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
/\p{General_Category=Letter}/u;
|
||||
/\P{General_Category=Letter}/u;
|
||||
assert.throws.early(SyntaxError, "/\\p{^General_Category=Letter}/u");
|
||||
assert.throws.early(SyntaxError, "/\\p{General_Category:Letter}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{General_Category:Letter}/u");
|
||||
/\p{Letter}/u;
|
||||
/\P{Letter}/u;
|
||||
assert.throws.early(SyntaxError, "/\\p{=Letter}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{=Letter}/u");
|
||||
assert.throws.early(SyntaxError, "/\\p{=}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{=}/u");
|
||||
/\p{L}/u;
|
||||
/\P{L}/u;
|
||||
assert.throws.early(SyntaxError, "/\\pL/u");
|
||||
assert.throws.early(SyntaxError, "/\\PL/u");
|
||||
|
||||
// Note: `Adlam` is a valid property value for both `Script` and `Block`.
|
||||
/\p{Script=Adlam}/u;
|
||||
/\P{Script=Adlam}/u;
|
||||
assert.throws.early(SyntaxError, "/\\p{IsScript=Adlam}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{IsScript=Adlam}/u");
|
||||
assert.throws.early(SyntaxError, "/\\p{isScript=Adlam}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{isScript=Adlam}/u");
|
||||
assert.throws.early(SyntaxError, "/\\p{InScript=Adlam}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{InScript=Adlam}/u");
|
||||
assert.throws.early(SyntaxError, "/\\p{inScript=Adlam}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{inScript=Adlam}/u");
|
||||
assert.throws.early(SyntaxError, "/\\p{InAdlam}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{InAdlam}/u");
|
||||
|
||||
assert.throws.early(SyntaxError, "/\\p{/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{/u");
|
||||
assert.throws.early(SyntaxError, "/\\p}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P}/u");
|
||||
assert.throws.early(SyntaxError, "/\\p/u");
|
||||
assert.throws.early(SyntaxError, "/\\P/u");
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{ General_Category=Uppercase_Letter }/u;
|
18
test/built-ins/RegExp/property-escapes/loose-matching-01.js
Normal file
18
test/built-ins/RegExp/property-escapes/loose-matching-01.js
Normal file
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{ General_Category=Uppercase_Letter }/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{ Lowercase }/u;
|
18
test/built-ins/RegExp/property-escapes/loose-matching-02.js
Normal file
18
test/built-ins/RegExp/property-escapes/loose-matching-02.js
Normal file
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{ Lowercase }/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{ANY}/u;
|
18
test/built-ins/RegExp/property-escapes/loose-matching-03.js
Normal file
18
test/built-ins/RegExp/property-escapes/loose-matching-03.js
Normal file
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{ANY}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{ASSIGNED}/u;
|
18
test/built-ins/RegExp/property-escapes/loose-matching-04.js
Normal file
18
test/built-ins/RegExp/property-escapes/loose-matching-04.js
Normal file
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{ASSIGNED}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{Ascii}/u;
|
18
test/built-ins/RegExp/property-escapes/loose-matching-05.js
Normal file
18
test/built-ins/RegExp/property-escapes/loose-matching-05.js
Normal file
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{Ascii}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{General_Category = Uppercase_Letter}/u;
|
18
test/built-ins/RegExp/property-escapes/loose-matching-06.js
Normal file
18
test/built-ins/RegExp/property-escapes/loose-matching-06.js
Normal file
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{General_Category = Uppercase_Letter}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{_-_lOwEr_C-A_S-E_-_}/u;
|
18
test/built-ins/RegExp/property-escapes/loose-matching-07.js
Normal file
18
test/built-ins/RegExp/property-escapes/loose-matching-07.js
Normal file
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{_-_lOwEr_C-A_S-E_-_}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{any}/u;
|
18
test/built-ins/RegExp/property-escapes/loose-matching-08.js
Normal file
18
test/built-ins/RegExp/property-escapes/loose-matching-08.js
Normal file
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{any}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{ascii}/u;
|
18
test/built-ins/RegExp/property-escapes/loose-matching-09.js
Normal file
18
test/built-ins/RegExp/property-escapes/loose-matching-09.js
Normal file
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{ascii}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{assigned}/u;
|
18
test/built-ins/RegExp/property-escapes/loose-matching-10.js
Normal file
18
test/built-ins/RegExp/property-escapes/loose-matching-10.js
Normal file
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{assigned}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{gC=uppercase_letter}/u;
|
18
test/built-ins/RegExp/property-escapes/loose-matching-11.js
Normal file
18
test/built-ins/RegExp/property-escapes/loose-matching-11.js
Normal file
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{gC=uppercase_letter}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{gc=uppercaseletter}/u;
|
18
test/built-ins/RegExp/property-escapes/loose-matching-12.js
Normal file
18
test/built-ins/RegExp/property-escapes/loose-matching-12.js
Normal file
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{gc=uppercaseletter}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{lowercase}/u;
|
18
test/built-ins/RegExp/property-escapes/loose-matching-13.js
Normal file
18
test/built-ins/RegExp/property-escapes/loose-matching-13.js
Normal file
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{lowercase}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{lowercase}/u;
|
18
test/built-ins/RegExp/property-escapes/loose-matching-14.js
Normal file
18
test/built-ins/RegExp/property-escapes/loose-matching-14.js
Normal file
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{lowercase}/u;
|
@ -1,36 +0,0 @@
|
||||
// Copyright 2017 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Loose matching must not be applied when matching properties and values in
|
||||
Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
/\p{Any}/u;
|
||||
assert.throws.early(SyntaxError, "/\\p{any}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{ANY}/u");
|
||||
|
||||
/\p{ASCII}/u;
|
||||
assert.throws.early(SyntaxError, "/\\p{ascii}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{Ascii}/u");
|
||||
|
||||
/\p{Assigned}/u;
|
||||
assert.throws.early(SyntaxError, "/\\p{assigned}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{ASSIGNED}/u");
|
||||
|
||||
/\p{General_Category=Uppercase_Letter}/u;
|
||||
/\P{General_Category=Uppercase_Letter}/u;
|
||||
assert.throws.early(SyntaxError, "/\\p{General_Category = Uppercase_Letter}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{ General_Category=Uppercase_Letter }/u");
|
||||
assert.throws.early(SyntaxError, "/\\p{gc=uppercaseletter}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{gC=uppercase_letter}/u");
|
||||
|
||||
/\p{Lowercase}/u;
|
||||
/\P{Lowercase}/u;
|
||||
assert.throws.early(SyntaxError, "/\\p{lowercase}/u");
|
||||
assert.throws.early(SyntaxError, "/\\p{ Lowercase }/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{_-_lOwEr_C-A_S-E_-_}/u");
|
@ -1,23 +0,0 @@
|
||||
// Copyright 2017 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-binary properties without a value must throw in Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
assert.throws.early(SyntaxError, "/\\p{General_Category}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{General_Category}/u");
|
||||
assert.throws.early(SyntaxError, "/\\p{General_Category=}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{General_Category=}/u");
|
||||
assert.throws.early(SyntaxError, "/\\p{Script}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{Script}/u");
|
||||
assert.throws.early(SyntaxError, "/\\p{Script=}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{Script=}/u");
|
||||
assert.throws.early(SyntaxError, "/\\p{Script_Extensions}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{Script_Extensions}/u");
|
||||
assert.throws.early(SyntaxError, "/\\p{Script_Extensions=}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{Script_Extensions=}/u");
|
@ -0,0 +1,17 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-binary properties without a value must throw in Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{General_Category=}/u;
|
@ -0,0 +1,17 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-binary properties without a value must throw in Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{General_Category=}/u;
|
@ -0,0 +1,17 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-binary properties without a value must throw in Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{General_Category}/u;
|
@ -0,0 +1,17 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-binary properties without a value must throw in Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{General_Category}/u;
|
@ -0,0 +1,17 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-binary properties without a value must throw in Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{Script=}/u;
|
@ -0,0 +1,17 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-binary properties without a value must throw in Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{Script=}/u;
|
@ -0,0 +1,17 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-binary properties without a value must throw in Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{Script}/u;
|
@ -0,0 +1,17 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-binary properties without a value must throw in Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{Script}/u;
|
@ -0,0 +1,17 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-binary properties without a value must throw in Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{Script_Extensions=}/u;
|
@ -0,0 +1,17 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-binary properties without a value must throw in Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{Script_Extensions=}/u;
|
@ -0,0 +1,17 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-binary properties without a value must throw in Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{Script_Extensions}/u;
|
@ -0,0 +1,17 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-binary properties without a value must throw in Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{Script_Extensions}/u;
|
@ -0,0 +1,17 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-existent properties must not be supported in Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{UnknownBinaryProperty}/u;
|
@ -0,0 +1,17 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-existent properties must not be supported in Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{UnknownBinaryProperty}/u;
|
@ -1,16 +0,0 @@
|
||||
// Copyright 2017 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-existent properties must not be supported in Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
assert.throws.early(SyntaxError, "/\\p{UnknownBinaryProperty}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{UnknownBinaryProperty}/u");
|
||||
|
||||
assert.throws.early(SyntaxError, "/\\p{Line_Breakz=Alphabetic}/u");
|
||||
assert.throws.early(SyntaxError, "/\\P{Line_Breakz=Alphabetic}/u");
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-existent property values must not be supported in Unicode property
|
||||
escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{Line_Breakz=WAT}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-existent property values must not be supported in Unicode property
|
||||
escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{Line_Breakz=WAT}/u;
|
@ -0,0 +1,17 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-existent properties must not be supported in Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\P{Line_Breakz=Alphabetic}/u;
|
@ -0,0 +1,17 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-existent properties must not be supported in Unicode property escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\p{Line_Breakz=Alphabetic}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-existent property values must not be supported in Unicode property
|
||||
escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\\P{General_Category=WAT}/u;
|
@ -0,0 +1,18 @@
|
||||
// Copyright 2018 Mathias Bynens. All rights reserved.
|
||||
// This code is governed by the BSD license found in the LICENSE file.
|
||||
|
||||
/*---
|
||||
author: Mathias Bynens
|
||||
description: >
|
||||
Non-existent property values must not be supported in Unicode property
|
||||
escapes.
|
||||
esid: sec-static-semantics-unicodematchproperty-p
|
||||
negative:
|
||||
phase: parse
|
||||
type: SyntaxError
|
||||
features: [regexp-unicode-property-escapes]
|
||||
---*/
|
||||
|
||||
throw "Test262: This statement should not be evaluated.";
|
||||
|
||||
/\\P{Script=FooBarBazInvalid}/u;
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user