| // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| /// @assertion 15.10.2.12: The production CharacterClassEscape :: d evaluates by |
| /// returning the ten-element set of characters containing the characters 0 |
| /// through 9 inclusive. |
| /// @description Checks that \d works as described. |
| /// @3rdparty sputnik-v1:S15.10.2.12_A5_T1.js-S15.10.2.12_A5_T3.js |
| /// @author rodionov |
| |
| import "../../../../Utils/expect.dart"; |
| |
| |
| main() { |
| RegExp re = new RegExp("\\d"); |
| for (int alpha = 0x0000; alpha <= 0xFFFF; alpha++) { |
| if(alpha >= 0x0030 && alpha <= 0x0039) { |
| // a decimal digit |
| Expect.isNotNull( |
| re.firstMatch(String.fromCharCodes([alpha])), "\\d !~ char($alpha)"); |
| } else { |
| Expect.isNull( |
| re.firstMatch(String.fromCharCodes([alpha])), "\\d ~ char($alpha)"); |
| } |
| } |
| } |