[6a3a178] | 1 | "use strict";
|
---|
| 2 |
|
---|
| 3 | var _helpers = require("../util/helpers");
|
---|
| 4 |
|
---|
| 5 | (0, _helpers.test)('id selector', '#foo', function (t, tree) {
|
---|
| 6 | t.deepEqual(tree.nodes[0].nodes[0].value, 'foo');
|
---|
| 7 | });
|
---|
| 8 | (0, _helpers.test)('escaped special char', '#w\\+', function (t, tree) {
|
---|
| 9 | t.deepEqual(tree.nodes[0].nodes[0].value, 'w+');
|
---|
| 10 | });
|
---|
| 11 | (0, _helpers.test)('tailing escape', '#foo\\', function (t, tree) {
|
---|
| 12 | t.deepEqual(tree.nodes[0].nodes[0].value, 'foo\\');
|
---|
| 13 | });
|
---|
| 14 | (0, _helpers.test)('double escape', '#wow\\\\k', function (t, tree) {
|
---|
| 15 | t.deepEqual(tree.nodes[0].nodes[0].value, 'wow\\k');
|
---|
| 16 | });
|
---|
| 17 | (0, _helpers.test)('leading numeric', '.\\31 23', function (t, tree) {
|
---|
| 18 | t.deepEqual(tree.nodes[0].nodes[0].value, '123');
|
---|
| 19 | });
|
---|
| 20 | (0, _helpers.test)('emoji', '.\\🐐', function (t, tree) {
|
---|
| 21 | t.deepEqual(tree.nodes[0].nodes[0].value, '🐐');
|
---|
| 22 | }); // https://www.w3.org/International/questions/qa-escapes#cssescapes
|
---|
| 23 |
|
---|
| 24 | (0, _helpers.test)('hex escape', '.\\E9motion', function (t, tree) {
|
---|
| 25 | t.deepEqual(tree.nodes[0].nodes[0].value, 'émotion');
|
---|
| 26 | });
|
---|
| 27 | (0, _helpers.test)('hex escape with space', '.\\E9 dition', function (t, tree) {
|
---|
| 28 | t.deepEqual(tree.nodes[0].nodes[0].value, 'édition');
|
---|
| 29 | });
|
---|
| 30 | (0, _helpers.test)('hex escape with hex number', '.\\0000E9dition', function (t, tree) {
|
---|
| 31 | t.deepEqual(tree.nodes[0].nodes[0].value, 'édition');
|
---|
| 32 | });
|
---|
| 33 | (0, _helpers.test)('class selector with escaping', '.\\1D306', function (t, tree) {
|
---|
| 34 | t.deepEqual(tree.nodes[0].nodes[0].value, '𝌆');
|
---|
| 35 | });
|
---|
| 36 | (0, _helpers.test)('class selector with escaping with more chars', '.\\1D306k', function (t, tree) {
|
---|
| 37 | t.deepEqual(tree.nodes[0].nodes[0].value, '𝌆k');
|
---|
| 38 | });
|
---|
| 39 | (0, _helpers.test)('class selector with escaping with more chars with whitespace', '.wow\\1D306 k', function (t, tree) {
|
---|
| 40 | t.deepEqual(tree.nodes[0].nodes[0].value, 'wow𝌆k');
|
---|
| 41 | });
|
---|
| 42 | (0, _helpers.test)('handles 0 value hex', '\\0', function (t, tree) {
|
---|
| 43 | t.deepEqual(tree.nodes[0].nodes[0].value, String.fromCodePoint(0xFFFD));
|
---|
| 44 | });
|
---|
| 45 | (0, _helpers.test)('handles lone surrogate value hex', '\\DBFF', function (t, tree) {
|
---|
| 46 | t.deepEqual(tree.nodes[0].nodes[0].value, String.fromCodePoint(0xFFFD));
|
---|
| 47 | });
|
---|
| 48 | (0, _helpers.test)('handles out of bound values', '\\110000', function (t, tree) {
|
---|
| 49 | t.deepEqual(tree.nodes[0].nodes[0].value, String.fromCodePoint(0xFFFD));
|
---|
| 50 | }); |
---|