chromium/third_party/blink/web_tests/fast/regex/non-pattern-characters-expected.txt

This page tests handling of characters which, according to ECMA 262, are not regular expression PatternCharacters. Those characters are: ^ $ . * + ? ( ) [ ] { } |

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


Testing regexp: /^/g
PASS regexp.test('') is true
PASS regexp.lastIndex is 0

Testing regexp: /\n^/gm
PASS regexp.test('\n\n') is true
PASS regexp.lastIndex is 1

Testing regexp: /$/g
PASS regexp.test('') is true
PASS regexp.lastIndex is 0

Testing regexp: /\n$/gm
PASS regexp.test('\n\n') is true
PASS regexp.lastIndex is 1

Testing regexp: /\z/
PASS regexp.test('z') is true

Testing regexp: /a\z/
PASS regexp.test('az') is true

Testing regexp: /\_/
PASS regexp.test('_') is true

Testing regexp: /a\_/
PASS regexp.test('a_') is true

Testing regexp: [invalid \ variations]
PASS /\/ threw exception SyntaxError: Invalid regular expression: missing /.
PASS /a\/ threw exception SyntaxError: Invalid regular expression: missing /.

Testing regexp: /./
PASS regexp.test('a') is true
PASS regexp.test('\n') is false

Testing regexp: /a./
PASS regexp.test('aa') is true
PASS regexp.test('a\n') is false

Testing regexp: /a*/gm
PASS regexp.test('b') is true
PASS regexp.lastIndex is 0
PASS regexp.test('aaba') is true
PASS regexp.lastIndex is 2

Testing regexp: [invalid * variations]
PASS /*/ threw exception SyntaxError: Invalid or unexpected token.
PASS /^*/ threw exception SyntaxError: Invalid regular expression: /^*/: Nothing to repeat.

Testing regexp: /a+/gm
PASS regexp.test('b') is false
PASS regexp.test('aaba') is true
PASS regexp.lastIndex is 2

Testing regexp: [invalid + variations]
PASS /+/ threw exception SyntaxError: Invalid regular expression: /+/: Nothing to repeat.

Testing regexp: /a?/gm
PASS regexp.test('b') is true
PASS regexp.lastIndex is 0
PASS regexp.test('aaba') is true
PASS regexp.lastIndex is 1

Testing regexp: [invalid ? variations]
PASS /?/ threw exception SyntaxError: Invalid regular expression: /?/: Nothing to repeat.

Testing regexp: [invalid ( variations]
PASS /(/ threw exception SyntaxError: Invalid regular expression: /(/: Unterminated group.
PASS /a(/ threw exception SyntaxError: Invalid regular expression: /a(/: Unterminated group.

Testing regexp: [invalid ) variations]
PASS /)/ threw exception SyntaxError: Invalid regular expression: /)/: Unmatched ')'.
PASS /a)/ threw exception SyntaxError: Invalid regular expression: /a)/: Unmatched ')'.

Testing regexp: [invalid [ variations]
PASS /[/ threw exception SyntaxError: Invalid regular expression: missing /.
PASS /a[/ threw exception SyntaxError: Invalid regular expression: missing /.
PASS /[b-a]/ threw exception SyntaxError: Invalid regular expression: /[b-a]/: Range out of order in character class.
PASS /a[b-a]/ threw exception SyntaxError: Invalid regular expression: /a[b-a]/: Range out of order in character class.

Testing regexp: /]/gm
PASS regexp.test(']') is true
PASS regexp.lastIndex is 1

Testing regexp: /a]/gm
PASS regexp.test('a]') is true
PASS regexp.lastIndex is 2

Testing regexp: /{/gm
PASS regexp.test('{') is true
PASS regexp.lastIndex is 1

Testing regexp: /a{/gm
PASS regexp.test('a{') is true
PASS regexp.lastIndex is 2

Testing regexp: /{a/gm
PASS regexp.test('{a') is true
PASS regexp.lastIndex is 2

Testing regexp: /a{a/gm
PASS regexp.test('a{a') is true
PASS regexp.lastIndex is 3

Testing regexp: /{1,/gm
PASS regexp.test('{1,') is true
PASS regexp.lastIndex is 3

Testing regexp: /a{1,/gm
PASS regexp.test('a{1,') is true
PASS regexp.lastIndex is 4

Testing regexp: /{1,a/gm
PASS regexp.test('{1,a') is true
PASS regexp.lastIndex is 4

Testing regexp: /{1,0/gm
PASS regexp.test('{1,0') is true
PASS regexp.lastIndex is 4

Testing regexp: /{1, 0}/gm
PASS regexp.test('{1, 0}') is true
PASS regexp.lastIndex is 6

Testing regexp: /a{1, 0}/gm
PASS regexp.test('a{1, 0}') is true
PASS regexp.lastIndex is 7

Testing regexp: /a{1,0/gm
PASS regexp.test('a{1,0') is true
PASS regexp.lastIndex is 5

Testing regexp: /a{0}/gm
PASS regexp.test('a') is true
PASS regexp.lastIndex is 0
PASS regexp.test('b') is true
PASS regexp.lastIndex is 0

Testing regexp: [invalid {} variations]
PASS /{0}/ threw exception SyntaxError: Invalid regular expression: /{0}/: Nothing to repeat.
PASS /{1,0}/ threw exception SyntaxError: Invalid regular expression: /{1,0}/: Nothing to repeat.
PASS /a{1,0}/ threw exception SyntaxError: Invalid regular expression: /a{1,0}/: numbers out of order in {} quantifier.

Testing regexp: /}/gm
PASS regexp.test('}') is true
PASS regexp.lastIndex is 1

Testing regexp: /a}/gm
PASS regexp.test('a}') is true
PASS regexp.lastIndex is 2

Testing regexp: /(?:)/gm
PASS regexp.test('') is true
PASS regexp.lastIndex is 0

Testing regexp: /|/gm
PASS regexp.test('|') is true
PASS regexp.lastIndex is 0

Testing regexp: /a|/gm
PASS regexp.test('|') is true
PASS regexp.lastIndex is 0
PASS successfullyParsed is true

TEST COMPLETE