1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- // 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 whitespace class escape \s with flags g
- 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: [
- 0x000020,
- 0x0000A0,
- 0x001680,
- 0x00202F,
- 0x00205F,
- 0x003000,
- 0x00FEFF,
- ],
- ranges: [
- [0x000009, 0x00000D],
- [0x002000, 0x00200A],
- [0x002028, 0x002029],
- ],
- });
- const re = /\s/g;
- 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(',')
- );
|