non-bmp-non-spaces.js (3610B)
1 /* -*- indent-tabs-mode: nil; js-indent-level: 4 -*- 2 * This Source Code Form is subject to the terms of the Mozilla Public 3 * License, v. 2.0. If a copy of the MPL was not distributed with this 4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 5 6 // White space must not be determined by truncating char32_t to char16_t. 7 8 assertThrowsInstanceOf(() => eval("\u{40008}"), SyntaxError); 9 assertThrowsInstanceOf(() => eval("\u{40009}"), SyntaxError); // U+0009 CHARACTER TABULATION 10 assertThrowsInstanceOf(() => eval("\u{4000A}"), SyntaxError); // U+000A LINE FEED 11 assertThrowsInstanceOf(() => eval("\u{4000B}"), SyntaxError); // U+000B LINE TABULATION 12 assertThrowsInstanceOf(() => eval("\u{4000C}"), SyntaxError); // U+000C FORM FEED 13 assertThrowsInstanceOf(() => eval("\u{4000D}"), SyntaxError); // U+000D CARRIAGE RETURN 14 assertThrowsInstanceOf(() => eval("\u{4000E}"), SyntaxError); 15 16 assertThrowsInstanceOf(() => eval("\u{4001F}"), SyntaxError); 17 assertThrowsInstanceOf(() => eval("\u{40020}"), SyntaxError); // U+0020 SPACE 18 assertThrowsInstanceOf(() => eval("\u{40021}"), SyntaxError); 19 20 assertThrowsInstanceOf(() => eval("\u{4009F}"), SyntaxError); 21 assertThrowsInstanceOf(() => eval("\u{400A0}"), SyntaxError); // U+00A0 NO-BREAK SPACE 22 assertThrowsInstanceOf(() => eval("\u{400A1}"), SyntaxError); 23 24 assertThrowsInstanceOf(() => eval("\u{4167F}"), SyntaxError); 25 assertThrowsInstanceOf(() => eval("\u{41680}"), SyntaxError); // U+1680 OGHAM SPACE MARK 26 assertThrowsInstanceOf(() => eval("\u{41681}"), SyntaxError); 27 28 assertThrowsInstanceOf(() => eval("\u{41FFF}"), SyntaxError); 29 assertThrowsInstanceOf(() => eval("\u{42000}"), SyntaxError); // U+2000 EN QUAD 30 assertThrowsInstanceOf(() => eval("\u{42001}"), SyntaxError); // U+2001 EM QUAD 31 assertThrowsInstanceOf(() => eval("\u{42002}"), SyntaxError); // U+2002 EN SPACE 32 assertThrowsInstanceOf(() => eval("\u{42003}"), SyntaxError); // U+2003 EM SPACE 33 assertThrowsInstanceOf(() => eval("\u{42004}"), SyntaxError); // U+2004 THREE-PER-EM SPACE 34 assertThrowsInstanceOf(() => eval("\u{42005}"), SyntaxError); // U+2005 FOUR-PER-EM SPACE 35 assertThrowsInstanceOf(() => eval("\u{42006}"), SyntaxError); // U+2006 SIX-PER-EM SPACE 36 assertThrowsInstanceOf(() => eval("\u{42007}"), SyntaxError); // U+2007 FIGURE SPACE 37 assertThrowsInstanceOf(() => eval("\u{42008}"), SyntaxError); // U+2008 PUNCTUATION SPACE 38 assertThrowsInstanceOf(() => eval("\u{42009}"), SyntaxError); // U+2009 THIN SPACE 39 assertThrowsInstanceOf(() => eval("\u{4200A}"), SyntaxError); // U+200A HAIR SPACE 40 assertThrowsInstanceOf(() => eval("\u{4200B}"), SyntaxError); 41 42 assertThrowsInstanceOf(() => eval("\u{42027}"), SyntaxError); 43 assertThrowsInstanceOf(() => eval("\u{42028}"), SyntaxError); // U+2028 LINE SEPARATOR 44 assertThrowsInstanceOf(() => eval("\u{42029}"), SyntaxError); // U+2028 PARAGRAPH SEPARATOR 45 assertThrowsInstanceOf(() => eval("\u{4202A}"), SyntaxError); 46 47 assertThrowsInstanceOf(() => eval("\u{4202E}"), SyntaxError); 48 assertThrowsInstanceOf(() => eval("\u{4202F}"), SyntaxError); // U+202F NARROW NO-BREAK SPACE 49 assertThrowsInstanceOf(() => eval("\u{42030}"), SyntaxError); 50 51 assertThrowsInstanceOf(() => eval("\u{4205E}"), SyntaxError); 52 assertThrowsInstanceOf(() => eval("\u{4205F}"), SyntaxError); // U+205F MEDIUM MATHEMATICAL SPACE 53 assertThrowsInstanceOf(() => eval("\u{42060}"), SyntaxError); 54 55 assertThrowsInstanceOf(() => eval("\u{42FFF}"), SyntaxError); 56 assertThrowsInstanceOf(() => eval("\u{43000}"), SyntaxError); // U+3000 IDEOGRAPHIC SPACE 57 assertThrowsInstanceOf(() => eval("\u{43001}"), SyntaxError); 58 59 if (typeof reportCompare === "function") 60 reportCompare(true, true);