source: trip-planner-front/node_modules/postcss-selector-parser/dist/__tests__/node.js@ 6a3a178

Last change on this file since 6a3a178 was 6a3a178, checked in by Ema <ema_spirova@…>, 3 years ago

initial commit

  • Property mode set to 100644
File size: 5.0 KB
Line 
1"use strict";
2
3var _ava = _interopRequireDefault(require("ava"));
4
5var _ = _interopRequireDefault(require(".."));
6
7var _helpers = require("./util/helpers");
8
9function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
10
11(0, _ava["default"])('node#clone', function (t) {
12 (0, _helpers.parse)('[href="test"]', function (selectors) {
13 var selector = selectors.first.first;
14 var clone = selector.clone();
15 delete selector.parent;
16 t.deepEqual(clone, selectors.first.first);
17 });
18});
19(0, _ava["default"])('node#clone of attribute', function (t) {
20 (0, _helpers.parse)('[href=test]', function (selectors) {
21 var selector = selectors.first.first;
22 var clone = selector.clone();
23 delete selector.parent;
24 t.deepEqual(clone, selectors.first.first);
25 });
26});
27(0, _ava["default"])('node#replaceWith', function (t) {
28 var out = (0, _helpers.parse)('[href="test"]', function (selectors) {
29 var attr = selectors.first.first;
30
31 var id = _["default"].id({
32 value: 'test'
33 });
34
35 var className = _["default"].className({
36 value: 'test'
37 });
38
39 attr.replaceWith(id, className);
40 });
41 t.deepEqual(out, '#test.test');
42});
43(0, _ava["default"])('Node#appendToPropertyAndEscape', function (t) {
44 var out = (0, _helpers.parse)('.fo\\o', function (selectors) {
45 var className = selectors.first.first;
46 t.deepEqual(className.raws, {
47 value: "fo\\o"
48 });
49 className.appendToPropertyAndEscape("value", "bar", "ba\\r");
50 t.deepEqual(className.raws, {
51 value: "fo\\oba\\r"
52 });
53 });
54 t.deepEqual(out, '.fo\\oba\\r');
55});
56(0, _ava["default"])('Node#setPropertyAndEscape with existing raws', function (t) {
57 var out = (0, _helpers.parse)('.fo\\o', function (selectors) {
58 var className = selectors.first.first;
59 t.deepEqual(className.raws, {
60 value: "fo\\o"
61 });
62 className.setPropertyAndEscape("value", "bar", "ba\\r");
63 t.deepEqual(className.raws, {
64 value: "ba\\r"
65 });
66 });
67 t.deepEqual(out, '.ba\\r');
68});
69(0, _ava["default"])('Node#setPropertyAndEscape without existing raws', function (t) {
70 var out = (0, _helpers.parse)('.foo', function (selectors) {
71 var className = selectors.first.first;
72 t.deepEqual(className.raws, undefined);
73 className.setPropertyAndEscape("value", "bar", "ba\\r");
74 t.deepEqual(className.raws, {
75 value: "ba\\r"
76 });
77 });
78 t.deepEqual(out, '.ba\\r');
79});
80(0, _ava["default"])('Node#setPropertyWithoutEscape with existing raws', function (t) {
81 var out = (0, _helpers.parse)('.fo\\o', function (selectors) {
82 var className = selectors.first.first;
83 t.deepEqual(className.raws, {
84 value: "fo\\o"
85 });
86 className.setPropertyWithoutEscape("value", "w+t+f");
87 t.deepEqual(className.raws, {});
88 });
89 t.deepEqual(out, '.w+t+f');
90});
91(0, _ava["default"])('Node#setPropertyWithoutEscape without existing raws', function (t) {
92 var out = (0, _helpers.parse)('.foo', function (selectors) {
93 var className = selectors.first.first;
94 t.deepEqual(className.raws, undefined);
95 className.setPropertyWithoutEscape("value", "w+t+f");
96 t.deepEqual(className.raws, {});
97 t.deepEqual(className.value, "w+t+f");
98 });
99 t.deepEqual(out, '.w+t+f');
100});
101(0, _ava["default"])('Node#isAtPosition', function (t) {
102 (0, _helpers.parse)(':not(.foo),\n#foo > :matches(ol, ul)', function (root) {
103 t.deepEqual(root.isAtPosition(1, 1), true);
104 t.deepEqual(root.isAtPosition(1, 10), true);
105 t.deepEqual(root.isAtPosition(2, 23), true);
106 t.deepEqual(root.isAtPosition(2, 24), false);
107 var selector = root.first;
108 t.deepEqual(selector.isAtPosition(1, 1), true);
109 t.deepEqual(selector.isAtPosition(1, 10), true);
110 t.deepEqual(selector.isAtPosition(1, 11), false);
111 var pseudoNot = selector.first;
112 t.deepEqual(pseudoNot.isAtPosition(1, 1), true);
113 t.deepEqual(pseudoNot.isAtPosition(1, 7), true);
114 t.deepEqual(pseudoNot.isAtPosition(1, 10), true);
115 t.deepEqual(pseudoNot.isAtPosition(1, 11), false);
116 var notSelector = pseudoNot.first;
117 t.deepEqual(notSelector.isAtPosition(1, 1), false);
118 t.deepEqual(notSelector.isAtPosition(1, 4), false);
119 t.deepEqual(notSelector.isAtPosition(1, 5), true);
120 t.deepEqual(notSelector.isAtPosition(1, 6), true);
121 t.deepEqual(notSelector.isAtPosition(1, 9), true);
122 t.deepEqual(notSelector.isAtPosition(1, 10), true);
123 t.deepEqual(notSelector.isAtPosition(1, 11), false);
124 var notClass = notSelector.first;
125 t.deepEqual(notClass.isAtPosition(1, 5), false);
126 t.deepEqual(notClass.isAtPosition(1, 6), true);
127 t.deepEqual(notClass.isAtPosition(1, 9), true);
128 t.deepEqual(notClass.isAtPosition(1, 10), false);
129 var secondSel = root.at(1);
130 t.deepEqual(secondSel.isAtPosition(1, 11), false);
131 t.deepEqual(secondSel.isAtPosition(2, 1), true);
132 t.deepEqual(secondSel.isAtPosition(2, 23), true);
133 t.deepEqual(secondSel.isAtPosition(2, 24), false);
134 var combinator = secondSel.at(1);
135 t.deepEqual(combinator.isAtPosition(2, 5), false);
136 t.deepEqual(combinator.isAtPosition(2, 6), true);
137 t.deepEqual(combinator.isAtPosition(2, 7), false);
138 });
139});
Note: See TracBrowser for help on using the repository browser.