123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- // Copyright (C) 2018 Leo Balter. All rights reserved.
- // This code is governed by the BSD license found in the LICENSE file.
- /*---
- esid: prod-CharacterClassEscape
- description: >
- Compare range for word class escape \w with flags ug
- info: |
- This is a generated test. Please check out
- https://github.com/bocoup/test262-regexp-generator
- for any changes.
- CharacterClassEscape[U] ::
- d
- D
- s
- S
- w
- W
- 21.2.2.12 CharacterClassEscape
- The production CharacterClassEscape :: d evaluates as follows:
- Return the ten-element set of characters containing the characters 0 through 9 inclusive.
- The production CharacterClassEscape :: D evaluates as follows:
- Return the set of all characters not included in the set returned by CharacterClassEscape :: d.
- The production CharacterClassEscape :: s evaluates as follows:
- Return the set of characters containing the characters that are on the right-hand side of
- the WhiteSpace or LineTerminator productions.
- The production CharacterClassEscape :: S evaluates as follows:
- Return the set of all characters not included in the set returned by CharacterClassEscape :: s.
- The production CharacterClassEscape :: w evaluates as follows:
- Return the set of all characters returned by WordCharacters().
- The production CharacterClassEscape :: W evaluates as follows:
- Return the set of all characters not included in the set returned by CharacterClassEscape :: w.
- features: [String.fromCodePoint]
- includes: [regExpUtils.js]
- ---*/
- const str = buildString({
- loneCodePoints: [0x00005F],
- ranges: [
- [0x000030, 0x000039],
- [0x000041, 0x00005A],
- [0x000061, 0x00007A],
- ],
- });
- const re = /\w/ug;
- const errors = [];
- if (!re.test(str)) {
- // Error, let's find out where
- for (const char of str) {
- if (!re.test(char)) {
- errors.push('0x' + char.codePointAt(0).toString(16));
- }
- }
- }
- assert.sameValue(
- errors.length,
- 0,
- 'Expected matching code points, but received: ' + errors.join(',')
- );
|