Lines Matching refs:STR

10 	CHECK_XPATH_FAIL(STR("-"));  in TEST()
13 CHECK_XPATH_NUMBER(c, STR("-1"), -1); in TEST()
14 CHECK_XPATH_NUMBER(c, STR("--1"), 1); in TEST()
15 CHECK_XPATH_NUMBER(c, STR("---1"), -1); in TEST()
18 CHECK_XPATH_FAIL(STR("5+")); in TEST()
19 CHECK_XPATH_FAIL(STR("5-")); in TEST()
20 CHECK_XPATH_FAIL(STR("5*")); in TEST()
21 CHECK_XPATH_FAIL(STR("+5")); in TEST()
22 CHECK_XPATH_FAIL(STR("*5")); in TEST()
23 CHECK_XPATH_FAIL(STR("1div2")); in TEST()
24 CHECK_XPATH_FAIL(STR("1mod")); in TEST()
25 CHECK_XPATH_FAIL(STR("1div")); in TEST()
28 CHECK_XPATH_NUMBER(c, STR("1 + 2"), 3); in TEST()
29 CHECK_XPATH_NUMBER(c, STR("1+2"), 3); in TEST()
30 CHECK_XPATH_NUMBER(c, STR("1 * 2"), 2); in TEST()
31 CHECK_XPATH_NUMBER(c, STR("1*2"), 2); in TEST()
32 CHECK_XPATH_NUMBER(c, STR("1 div 2"), 0.5); in TEST()
35 CHECK_XPATH_NUMBER(c, STR("2 + 2 * 2 div 1 mod 3"), 3); in TEST()
36 CHECK_XPATH_NUMBER(c, STR("2 + 2 * 2 div (1 mod 3)"), 6); in TEST()
37 CHECK_XPATH_NUMBER(c, STR("(2 + 2) * 2 div (1 mod 3)"), 8); in TEST()
38 CHECK_XPATH_NUMBER(c, STR("(2 + 2) * (2 div 1) mod 3"), 2); in TEST()
39 CHECK_XPATH_NUMBER(c, STR("2 - -2"), 4); in TEST()
40 CHECK_XPATH_NUMBER(c, STR("2 + -2"), 0); in TEST()
41 CHECK_XPATH_NUMBER(c, STR("2--2"), 4); in TEST()
42 CHECK_XPATH_NUMBER(c, STR("2+-2"), 0); in TEST()
43 CHECK_XPATH_NUMBER(c, STR("1-2-3"), -4); in TEST()
46 CHECK_XPATH_NUMBER(c, STR("5 mod 2"), 1); in TEST()
47 CHECK_XPATH_NUMBER(c, STR("5 mod -2"), 1); in TEST()
48 CHECK_XPATH_NUMBER(c, STR("-5 mod 2"), -1); in TEST()
49 CHECK_XPATH_NUMBER(c, STR("-5 mod -2"), -1); in TEST()
57 CHECK_XPATH_STRING(c, STR("1 div 0"), STR("Infinity")); in TEST()
58 CHECK_XPATH_STRING(c, STR("-1 div 0"), STR("-Infinity")); in TEST()
59 CHECK_XPATH_STRING(c, STR("-1 div 0 + 1 div 0"), STR("NaN")); in TEST()
60 CHECK_XPATH_STRING(c, STR("0 div 0"), STR("NaN")); in TEST()
61 CHECK_XPATH_STRING(c, STR("1 div 0 + 1 div 0"), STR("Infinity")); in TEST()
62 CHECK_XPATH_STRING(c, STR("-1 div 0 + -1 div 0"), STR("-Infinity")); in TEST()
63 CHECK_XPATH_STRING(c, STR("1 div 0 + 100"), STR("Infinity")); in TEST()
64 CHECK_XPATH_STRING(c, STR("-1 div 0 + 100"), STR("-Infinity")); in TEST()
65 CHECK_XPATH_STRING(c, STR("0 div 0 + 100"), STR("NaN")); in TEST()
68 CHECK_XPATH_STRING(c, STR("1 div -0"), STR("-Infinity")); in TEST()
69 CHECK_XPATH_STRING(c, STR("-1 div -0"), STR("Infinity")); in TEST()
70 CHECK_XPATH_STRING(c, STR("1 div (-0 * 1)"), STR("-Infinity")); in TEST()
71 CHECK_XPATH_STRING(c, STR("-1 div (0 * -1)"), STR("Infinity")); in TEST()
72 CHECK_XPATH_STRING(c, STR("1 div (-0 div 1)"), STR("-Infinity")); in TEST()
73 CHECK_XPATH_STRING(c, STR("-1 div (0 div -1)"), STR("Infinity")); in TEST()
78 xml_node n = doc.child(STR("node"));
81 CHECK_XPATH_NUMBER(n, STR("foo-bar"), 10);
82 CHECK_XPATH_NUMBER(n, STR("foo -bar"), -1);
83 CHECK_XPATH_NUMBER(n, STR("foo - bar"), -1);
84 CHECK_XPATH_NUMBER(n, STR("-foo-bar"), -10);
85 CHECK_XPATH_NUMBER(n, STR("-foo -bar"), -5);
93 CHECK_XPATH_BOOLEAN(c, STR("true() or true()"), true); in TEST()
94 CHECK_XPATH_BOOLEAN(c, STR("true() or false()"), true); in TEST()
95 CHECK_XPATH_BOOLEAN(c, STR("false() or false()"), false); in TEST()
96 CHECK_XPATH_BOOLEAN(c, STR("false() or true()"), true); in TEST()
98 CHECK_XPATH_BOOLEAN(c, STR("true() and true()"), true); in TEST()
99 CHECK_XPATH_BOOLEAN(c, STR("true() and false()"), false); in TEST()
100 CHECK_XPATH_BOOLEAN(c, STR("false() and false()"), false); in TEST()
101 CHECK_XPATH_BOOLEAN(c, STR("false() and true()"), false); in TEST()
104 CHECK_XPATH_BOOLEAN(c, STR("1 or ''"), true); in TEST()
105 CHECK_XPATH_BOOLEAN(c, STR("1 and ''"), false); in TEST()
106 CHECK_XPATH_BOOLEAN(c, STR("0 or ''"), false); in TEST()
107 CHECK_XPATH_BOOLEAN(c, STR("0 or 'a'"), true); in TEST()
115 CHECK_XPATH_BOOLEAN(c, STR("true() = true()"), true); in TEST()
116 CHECK_XPATH_BOOLEAN(c, STR("false() = false()"), true); in TEST()
117 CHECK_XPATH_BOOLEAN(c, STR("true() != false()"), true); in TEST()
118 CHECK_XPATH_BOOLEAN(c, STR("false() != false()"), false); in TEST()
121 CHECK_XPATH_BOOLEAN(c, STR("true() = 2"), true); in TEST()
122 CHECK_XPATH_BOOLEAN(c, STR("true() != 2"), false); in TEST()
123 CHECK_XPATH_BOOLEAN(c, STR("false() = 2"), false); in TEST()
124 CHECK_XPATH_BOOLEAN(c, STR("false() != 2"), true); in TEST()
125 CHECK_XPATH_BOOLEAN(c, STR("false() = 0"), true); in TEST()
126 CHECK_XPATH_BOOLEAN(c, STR("false() != 0"), false); in TEST()
128 CHECK_XPATH_BOOLEAN(c, STR("2 = true()"), true); in TEST()
129 CHECK_XPATH_BOOLEAN(c, STR("2 != true()"), false); in TEST()
130 CHECK_XPATH_BOOLEAN(c, STR("2 = false()"), false); in TEST()
131 CHECK_XPATH_BOOLEAN(c, STR("2 != false()"), true); in TEST()
132 CHECK_XPATH_BOOLEAN(c, STR("0 = false()"), true); in TEST()
133 CHECK_XPATH_BOOLEAN(c, STR("0 != false()"), false); in TEST()
141 CHECK_XPATH_BOOLEAN(c, STR("1 = 1"), true); in TEST()
142 CHECK_XPATH_BOOLEAN(c, STR("0.5 = 0.5"), true); in TEST()
143 CHECK_XPATH_BOOLEAN(c, STR("1 != 2"), true); in TEST()
144 CHECK_XPATH_BOOLEAN(c, STR("1 = -1"), false); in TEST()
147 CHECK_XPATH_BOOLEAN(c, STR("1 div 0 = 2 div 0"), true); in TEST()
148 CHECK_XPATH_BOOLEAN(c, STR("-1 div 0 != 2 div 0"), true); in TEST()
151 CHECK_XPATH_BOOLEAN(c, STR("0 div 0 = 1"), false); in TEST()
152 CHECK_XPATH_BOOLEAN(c, STR("0 div 0 != 1"), true); in TEST()
153 CHECK_XPATH_BOOLEAN(c, STR("0 div 0 = 0 div 0"), false); in TEST()
157 CHECK_XPATH_BOOLEAN(c, STR("2 = '2'"), true); in TEST()
158 CHECK_XPATH_BOOLEAN(c, STR("2 != '2'"), false); in TEST()
159 CHECK_XPATH_BOOLEAN(c, STR("'1' != 2"), true); in TEST()
160 CHECK_XPATH_BOOLEAN(c, STR("'1' = 2"), false); in TEST()
168 CHECK_XPATH_BOOLEAN(c, STR("'a' = 'a'"), true); in TEST()
169 CHECK_XPATH_BOOLEAN(c, STR("'a' = 'b'"), false); in TEST()
170 CHECK_XPATH_BOOLEAN(c, STR("'ab' != 'a'"), true); in TEST()
171 CHECK_XPATH_BOOLEAN(c, STR("'' != 'a'"), true); in TEST()
172 CHECK_XPATH_BOOLEAN(c, STR("'a' != ''"), true); in TEST()
173 CHECK_XPATH_BOOLEAN(c, STR("'' != ''"), false); in TEST()
179 xml_node n = doc.child(STR("node"));
182 …CHECK_XPATH_BOOLEAN(c, STR("x = x"), false); // empty node set compares as false with any other ob…
183 CHECK_XPATH_BOOLEAN(c, STR("x != x"), false);
184 CHECK_XPATH_BOOLEAN(n, STR("c1/v = c2/v"), true);
185 CHECK_XPATH_BOOLEAN(n, STR("c1/v = c3/v"), true);
186 CHECK_XPATH_BOOLEAN(n, STR("c2/v = c3/v"), false);
187 CHECK_XPATH_BOOLEAN(n, STR("c1/v = c4/v"), false);
188 CHECK_XPATH_BOOLEAN(n, STR("c1/v = x"), false);
189 CHECK_XPATH_BOOLEAN(n, STR("x = c1"), false);
191 CHECK_XPATH_BOOLEAN(n, STR("c1/v != c2/v"), true);
192 CHECK_XPATH_BOOLEAN(n, STR("c1/v != c3/v"), true);
193 CHECK_XPATH_BOOLEAN(n, STR("c2/v != c3/v"), true);
194 CHECK_XPATH_BOOLEAN(n, STR("c1/v != c4/v"), true);
195 …CHECK_XPATH_BOOLEAN(n, STR("c1/v != c5/v"), true); // (a, b) != (a, b), since a != b, as per XPath…
196 CHECK_XPATH_BOOLEAN(n, STR("c3/v != c6/v"), false);
197 CHECK_XPATH_BOOLEAN(n, STR("c1/v != x"), false);
198 CHECK_XPATH_BOOLEAN(n, STR("x != c1/v"), false);
204 xml_node n = doc.child(STR("node"));
207 CHECK_XPATH_BOOLEAN(c, STR("x = 1"), false);
208 CHECK_XPATH_BOOLEAN(c, STR("x != 1"), false);
209 CHECK_XPATH_BOOLEAN(c, STR("1 = x"), false);
210 CHECK_XPATH_BOOLEAN(c, STR("1 != x"), false);
212 CHECK_XPATH_BOOLEAN(n, STR("c1/v = 1"), true);
213 CHECK_XPATH_BOOLEAN(n, STR("c1/v = -1"), true);
214 CHECK_XPATH_BOOLEAN(n, STR("c1/v != 1"), true);
215 CHECK_XPATH_BOOLEAN(n, STR("c1/v = 5"), false);
216 CHECK_XPATH_BOOLEAN(n, STR("c2/v = 1"), true);
218 CHECK_XPATH_BOOLEAN(n, STR("1 = c1/v"), true);
219 CHECK_XPATH_BOOLEAN(n, STR("-1 = c1/v"), true);
220 CHECK_XPATH_BOOLEAN(n, STR("1 != c1/v"), true);
221 CHECK_XPATH_BOOLEAN(n, STR("5 = c1/v"), false);
222 CHECK_XPATH_BOOLEAN(n, STR("1 = c2/v"), true);
225 CHECK_XPATH_BOOLEAN(n, STR("c2/v != 1"), true);
226 CHECK_XPATH_BOOLEAN(n, STR("1 != c2/v"), true);
230 CHECK_XPATH_BOOLEAN(c, STR("x = '1'"), false);
231 CHECK_XPATH_BOOLEAN(c, STR("x != '1'"), false);
232 CHECK_XPATH_BOOLEAN(c, STR("'1' = x"), false);
233 CHECK_XPATH_BOOLEAN(c, STR("'1' != x"), false);
235 CHECK_XPATH_BOOLEAN(n, STR("c1/v = '1'"), true);
236 CHECK_XPATH_BOOLEAN(n, STR("c1/v = '-1'"), true);
237 CHECK_XPATH_BOOLEAN(n, STR("c1/v != '1'"), true);
238 CHECK_XPATH_BOOLEAN(n, STR("c1/v = '5'"), false);
239 CHECK_XPATH_BOOLEAN(n, STR("c2/v = '1'"), true);
240 CHECK_XPATH_BOOLEAN(n, STR("c2/v != '1'"), true);
242 CHECK_XPATH_BOOLEAN(n, STR("'1' = c1/v"), true);
243 CHECK_XPATH_BOOLEAN(n, STR("'-1' = c1/v"), true);
244 CHECK_XPATH_BOOLEAN(n, STR("'1' != c1/v"), true);
245 CHECK_XPATH_BOOLEAN(n, STR("'5' = c1/v"), false);
246 CHECK_XPATH_BOOLEAN(n, STR("'1' = c2/v"), true);
247 CHECK_XPATH_BOOLEAN(n, STR("'1' != c2/v"), true);
250 CHECK_XPATH_BOOLEAN(n, STR("c1/v = '1.0'"), false);
253 CHECK_XPATH_BOOLEAN(n, STR("x = true()"), false);
254 CHECK_XPATH_BOOLEAN(n, STR("x != true()"), true);
255 CHECK_XPATH_BOOLEAN(n, STR("x = false()"), true);
256 CHECK_XPATH_BOOLEAN(n, STR("c1/v = true()"), true);
257 CHECK_XPATH_BOOLEAN(n, STR("c1/v != true()"), false);
258 CHECK_XPATH_BOOLEAN(n, STR("c1/v = false()"), false);
260 CHECK_XPATH_BOOLEAN(n, STR("true() = x"), false);
261 CHECK_XPATH_BOOLEAN(n, STR("true() != x"), true);
262 CHECK_XPATH_BOOLEAN(n, STR("false() = x"), true);
263 CHECK_XPATH_BOOLEAN(n, STR("true() = c1/v"), true);
264 CHECK_XPATH_BOOLEAN(n, STR("true() != c1/v"), false);
265 CHECK_XPATH_BOOLEAN(n, STR("false() = c1/v"), false);
273 CHECK_XPATH_BOOLEAN(c, STR("1 < 2"), true); in TEST()
274 CHECK_XPATH_BOOLEAN(c, STR("1 <= 2"), true); in TEST()
275 CHECK_XPATH_BOOLEAN(c, STR("1 > 2"), false); in TEST()
276 CHECK_XPATH_BOOLEAN(c, STR("1 >= 2"), false); in TEST()
278 CHECK_XPATH_BOOLEAN(c, STR("1 < 1"), false); in TEST()
279 CHECK_XPATH_BOOLEAN(c, STR("1 <= 1"), true); in TEST()
280 CHECK_XPATH_BOOLEAN(c, STR("1 > 1"), false); in TEST()
281 CHECK_XPATH_BOOLEAN(c, STR("1 >= 1"), true); in TEST()
284 CHECK_XPATH_BOOLEAN(c, STR("1 div 0 <= 2 div 0"), true); in TEST()
285 CHECK_XPATH_BOOLEAN(c, STR("1 div 0 < 2 div 0"), false); in TEST()
286 CHECK_XPATH_BOOLEAN(c, STR("-1 div 0 < 2 div 0"), true); in TEST()
287 CHECK_XPATH_BOOLEAN(c, STR("-1 div 0 > 2 div 0"), false); in TEST()
290 CHECK_XPATH_BOOLEAN(c, STR("0 div 0 < 1"), false); in TEST()
291 CHECK_XPATH_BOOLEAN(c, STR("0 div 0 <= 1"), false); in TEST()
292 CHECK_XPATH_BOOLEAN(c, STR("0 div 0 > 1"), false); in TEST()
293 CHECK_XPATH_BOOLEAN(c, STR("0 div 0 >= 1"), false); in TEST()
297 CHECK_XPATH_BOOLEAN(c, STR("2 < '2'"), false); in TEST()
298 CHECK_XPATH_BOOLEAN(c, STR("1 < '2'"), true); in TEST()
299 CHECK_XPATH_BOOLEAN(c, STR("2 <= '2'"), true); in TEST()
300 CHECK_XPATH_BOOLEAN(c, STR("3 <= '2'"), false); in TEST()
301 CHECK_XPATH_BOOLEAN(c, STR("2 > '2'"), false); in TEST()
302 CHECK_XPATH_BOOLEAN(c, STR("3 > '2'"), true); in TEST()
303 CHECK_XPATH_BOOLEAN(c, STR("2 >= '2'"), true); in TEST()
304 CHECK_XPATH_BOOLEAN(c, STR("3 >= '2'"), true); in TEST()
305 CHECK_XPATH_BOOLEAN(c, STR("1 >= true()"), true); in TEST()
306 CHECK_XPATH_BOOLEAN(c, STR("1 > true()"), false); in TEST()
312 xml_node n = doc.child(STR("node"));
315 CHECK_XPATH_BOOLEAN(c, STR("x < x"), false);
316 CHECK_XPATH_BOOLEAN(c, STR("x > x"), false);
317 CHECK_XPATH_BOOLEAN(c, STR("x <= x"), false);
318 CHECK_XPATH_BOOLEAN(c, STR("x >= x"), false);
320 CHECK_XPATH_BOOLEAN(n, STR("c1/v > x"), false);
321 CHECK_XPATH_BOOLEAN(n, STR("c1/v < x"), false);
322 CHECK_XPATH_BOOLEAN(n, STR("c1/v >= x"), false);
323 CHECK_XPATH_BOOLEAN(n, STR("c1/v <= x"), false);
325 CHECK_XPATH_BOOLEAN(n, STR("x > c1/v"), false);
326 CHECK_XPATH_BOOLEAN(n, STR("x < c1/v"), false);
327 CHECK_XPATH_BOOLEAN(n, STR("x >= c1/v"), false);
328 CHECK_XPATH_BOOLEAN(n, STR("x <= c1/v"), false);
330 CHECK_XPATH_BOOLEAN(n, STR("c1/v > c3/v"), true);
331 CHECK_XPATH_BOOLEAN(n, STR("c1/v >= c3/v"), true);
332 CHECK_XPATH_BOOLEAN(n, STR("c1/v < c3/v"), true);
333 CHECK_XPATH_BOOLEAN(n, STR("c1/v <= c3/v"), true);
336 CHECK_XPATH_BOOLEAN(n, STR("c1/v > c2/v"), false);
337 CHECK_XPATH_BOOLEAN(n, STR("c1/v >= c2/v"), true);
338 CHECK_XPATH_BOOLEAN(n, STR("c1/v < c2/v"), true);
339 CHECK_XPATH_BOOLEAN(n, STR("c1/v <= c2/v"), true);
346 xml_node n = doc.child(STR("node"));
349 CHECK_XPATH_BOOLEAN(c, STR("x < 0"), false);
350 CHECK_XPATH_BOOLEAN(c, STR("x > 0"), false);
351 CHECK_XPATH_BOOLEAN(c, STR("x <= 0"), false);
352 CHECK_XPATH_BOOLEAN(c, STR("x >= 0"), false);
354 CHECK_XPATH_BOOLEAN(c, STR("0 < x"), false);
355 CHECK_XPATH_BOOLEAN(c, STR("0 > x"), false);
356 CHECK_XPATH_BOOLEAN(c, STR("0 <= x"), false);
357 CHECK_XPATH_BOOLEAN(c, STR("0 >= x"), false);
359 CHECK_XPATH_BOOLEAN(n, STR("c1/v > 0"), true);
360 CHECK_XPATH_BOOLEAN(n, STR("c1/v > 1"), false);
361 CHECK_XPATH_BOOLEAN(n, STR("c1/v >= 0"), true);
362 CHECK_XPATH_BOOLEAN(n, STR("c1/v < 0"), true);
363 CHECK_XPATH_BOOLEAN(n, STR("c1/v <= 0"), true);
365 CHECK_XPATH_BOOLEAN(n, STR("0 < c1/v"), true);
366 CHECK_XPATH_BOOLEAN(n, STR("1 < c1/v"), false);
367 CHECK_XPATH_BOOLEAN(n, STR("0 <= c1/v"), true);
368 CHECK_XPATH_BOOLEAN(n, STR("0 > c1/v"), true);
369 CHECK_XPATH_BOOLEAN(n, STR("0 >= c1/v"), true);
372 CHECK_XPATH_BOOLEAN(n, STR("c1/v > '0'"), true);
373 CHECK_XPATH_BOOLEAN(n, STR("c1/v > '1'"), false);
374 CHECK_XPATH_BOOLEAN(n, STR("c1/v >= '0'"), true);
375 CHECK_XPATH_BOOLEAN(n, STR("c1/v < '0'"), true);
376 CHECK_XPATH_BOOLEAN(n, STR("c1/v <= '0'"), true);
378 CHECK_XPATH_BOOLEAN(n, STR("'0' < c1/v"), true);
379 CHECK_XPATH_BOOLEAN(n, STR("'1' < c1/v"), false);
380 CHECK_XPATH_BOOLEAN(n, STR("'0' <= c1/v"), true);
381 CHECK_XPATH_BOOLEAN(n, STR("'0' > c1/v"), true);
382 CHECK_XPATH_BOOLEAN(n, STR("'0' >= c1/v"), true);
385 CHECK_XPATH_BOOLEAN(n, STR("c1/v > false()"), true);
386 CHECK_XPATH_BOOLEAN(n, STR("c1/v > true()"), false);
387 CHECK_XPATH_BOOLEAN(n, STR("c1/v >= false()"), true);
388 CHECK_XPATH_BOOLEAN(n, STR("c1/v < false()"), true);
389 CHECK_XPATH_BOOLEAN(n, STR("c1/v <= false()"), true);
391 CHECK_XPATH_BOOLEAN(n, STR("false() < c1/v"), true);
392 CHECK_XPATH_BOOLEAN(n, STR("true() < c1/v"), false);
393 CHECK_XPATH_BOOLEAN(n, STR("false() <= c1/v"), true);
394 CHECK_XPATH_BOOLEAN(n, STR("false() > c1/v"), true);
395 CHECK_XPATH_BOOLEAN(n, STR("false() >= c1/v"), true);
402 CHECK_XPATH_BOOLEAN(c, STR("1 = 0 or 2 = 2"), true); in TEST()
403 CHECK_XPATH_BOOLEAN(c, STR("1 = (0 or 2) = false()"), false); in TEST()
404 CHECK_XPATH_BOOLEAN(c, STR("1 < 0 or 2 > 2"), false); in TEST()
405 CHECK_XPATH_BOOLEAN(c, STR("2 < 1 = false()"), true); in TEST()
406 CHECK_XPATH_BOOLEAN(c, STR("2 < (1 = false())"), false); in TEST()
407 CHECK_XPATH_BOOLEAN(c, STR("3 > 2 > 1"), false); in TEST()
408 CHECK_XPATH_BOOLEAN(c, STR("(3 > 2) > 1"), false); in TEST()
409 CHECK_XPATH_BOOLEAN(c, STR("3 > (2 > 1)"), true); in TEST()
415 xml_node n = doc.child(STR("node"));
417 CHECK_XPATH_NODESET(n, STR("employee | .")) % 2 % 3 % 4 % 6 % 8 % 11;
418 CHECK_XPATH_NODESET(n, STR("employee[@secretary] | employee[@assistant]")) % 4 % 6 % 8 % 11;
419 CHECK_XPATH_NODESET(n, STR("employee[@assistant] | employee[@secretary]")) % 4 % 6 % 8 % 11;
420 CHECK_XPATH_NODESET(n, STR("employee[@secretary] | employee[@nobody]")) % 4 % 8 % 11;
421 CHECK_XPATH_NODESET(n, STR("employee[@nobody] | employee[@secretary]")) % 4 % 8 % 11;
422 CHECK_XPATH_NODESET(n, STR("tail/preceding-sibling::employee | .")) % 2 % 3 % 4 % 6 % 8 % 11;
423 CHECK_XPATH_NODESET(n, STR(". | tail/preceding-sibling::employee | .")) % 2 % 3 % 4 % 6 % 8 % 11;
428 CHECK_XPATH_FAIL(STR(". | true()")); in TEST()
429 CHECK_XPATH_FAIL(STR(". | 1")); in TEST()
430 CHECK_XPATH_FAIL(STR(". | '1'")); in TEST()
431 CHECK_XPATH_FAIL(STR(". | count(.)")); in TEST()
432 CHECK_XPATH_FAIL(STR("true() | .")); in TEST()
433 CHECK_XPATH_FAIL(STR("1 | .")); in TEST()
434 CHECK_XPATH_FAIL(STR("'1' | .")); in TEST()
435 CHECK_XPATH_FAIL(STR("count(.) | .")); in TEST()
440 CHECK_XPATH_FAIL(STR("(-node1) | node2"));
441 CHECK_XPATH_FAIL(STR("node1 | -node2"));
442 CHECK_XPATH_NUMBER(doc, STR("-(node1 | node2)"), -3);
443 CHECK_XPATH_NUMBER(doc, STR("-node1 | node2"), -3);
444 CHECK_XPATH_NUMBER(doc, STR("--node1 | node2"), 3);
445 CHECK_XPATH_NUMBER(doc, STR("-(-node1 | node2)"), 3);
446 CHECK_XPATH_NUMBER(doc, STR("--(-node1 | node2)"), -3);
453 CHECK_XPATH_BOOLEAN(c, STR("false() or true() and true() and false()"), false); in TEST()
454 CHECK_XPATH_BOOLEAN(c, STR("3 > 2 > 1"), false); in TEST()
455 CHECK_XPATH_BOOLEAN(c, STR("4 > 3 > 2 > 1"), false); in TEST()
456 CHECK_XPATH_BOOLEAN(c, STR("5 > 4 > 3 > 2 > 1"), false); in TEST()
457 CHECK_XPATH_BOOLEAN(c, STR("1 < 2 < 3 < 4 < 5"), true); in TEST()
458 CHECK_XPATH_BOOLEAN(c, STR("1 <= 2 <= 3 <= 4 <= 5"), true); in TEST()
459 CHECK_XPATH_BOOLEAN(c, STR("5 >= 4 >= 3 >= 2 >= 1"), false); in TEST()
460 CHECK_XPATH_BOOLEAN(c, STR("3 >= 2 >= 1"), true); in TEST()
461 CHECK_XPATH_BOOLEAN(c, STR("2 >= 1"), true); in TEST()
462 CHECK_XPATH_BOOLEAN(c, STR("4 >= 3 >= 2 >= 1"), false); in TEST()
463 CHECK_XPATH_BOOLEAN(c, STR("((((5 > 4) > 3) > 2) > 1)"), false); in TEST()
464 CHECK_XPATH_BOOLEAN(c, STR("2 != 3 != 1 != 4 != 0"), true); in TEST()
465 CHECK_XPATH_BOOLEAN(c, STR("(((2 != 3) != 1) != 4) != 0"), true); in TEST()
466 CHECK_XPATH_BOOLEAN(c, STR("2 != 3 != 1 != 4 != 1"), false); in TEST()
467 CHECK_XPATH_BOOLEAN(c, STR("(((2 != 3) != 1) != 4) != 1"), false); in TEST()
468 CHECK_XPATH_BOOLEAN(c, STR("2 = 3 = 1 = 4 = 0"), true); in TEST()
469 CHECK_XPATH_BOOLEAN(c, STR("(((2 = 3) = 1) = 4) = 0"), true); in TEST()
470 CHECK_XPATH_BOOLEAN(c, STR("2 = 3 = 1 = 4 = 1"), false); in TEST()
471 CHECK_XPATH_BOOLEAN(c, STR("(((2 = 3) = 1) = 4) = 1"), false); in TEST()
478 CHECK_XPATH_NUMBER(c, STR("2+1-1+1"), 3); in TEST()
479 CHECK_XPATH_NUMBER(c, STR("1+2+1-1+1"), 4); in TEST()
480 CHECK_XPATH_NUMBER(c, STR("1+1+2+1-1+1"), 5); in TEST()
481 CHECK_XPATH_NUMBER(c, STR("1-1+1"), 1); in TEST()
490 CHECK_XPATH_NUMBER(c, STR("5 mod 3"), 2); in TEST()
491 CHECK_XPATH_NUMBER(c, STR("5 mod -3"), 2); in TEST()
492 CHECK_XPATH_NUMBER(c, STR("-5 mod 3"), -2); in TEST()
493 CHECK_XPATH_NUMBER(c, STR("-5 mod -3"), -2); in TEST()
497 CHECK_XPATH_NUMBER_NAN(c, STR("(0 div 0) mod 3")); in TEST()
498 CHECK_XPATH_NUMBER_NAN(c, STR("3 mod (0 div 0)")); in TEST()
499 CHECK_XPATH_NUMBER_NAN(c, STR("(0 div 0) mod (0 div 0)")); in TEST()
502 CHECK_XPATH_NUMBER_NAN(c, STR("(1 div 0) mod 3")); in TEST()
503 CHECK_XPATH_NUMBER_NAN(c, STR("(1 div 0) mod -3")); in TEST()
504 CHECK_XPATH_NUMBER_NAN(c, STR("(-1 div 0) mod 3")); in TEST()
505 CHECK_XPATH_NUMBER_NAN(c, STR("1 mod 0")); in TEST()
506 CHECK_XPATH_NUMBER_NAN(c, STR("-1 mod 0")); in TEST()
507 CHECK_XPATH_NUMBER_NAN(c, STR("(1 div 0) mod 0")); in TEST()
508 CHECK_XPATH_NUMBER_NAN(c, STR("(-1 div 0) mod 0")); in TEST()
513 CHECK_XPATH_NUMBER(c, STR("1 mod (1 div 0)"), 1); in TEST()
514 CHECK_XPATH_NUMBER(c, STR("1 mod (-1 div 0)"), 1); in TEST()
515 CHECK_XPATH_NUMBER(c, STR("-1 mod (1 div 0)"), -1); in TEST()
516 CHECK_XPATH_NUMBER(c, STR("0 mod (1 div 0)"), 0); in TEST()
517 CHECK_XPATH_NUMBER(c, STR("0 mod (-1 div 0)"), 0); in TEST()
518 CHECK_XPATH_NUMBER(c, STR("100000 mod (1 div 0)"), 100000); in TEST()
522 CHECK_XPATH_NUMBER(c, STR("0 mod 1000000"), 0); in TEST()
523 CHECK_XPATH_NUMBER(c, STR("0 mod -1000000"), 0); in TEST()
529 CHECK_XPATH_NUMBER(c, STR("9007199254740991 mod 2"), 1); in TEST()
530 CHECK_XPATH_NUMBER(c, STR("9007199254740991 mod 3"), 1); in TEST()
531 CHECK_XPATH_NUMBER(c, STR("18446744073709551615 mod 2"), 0); in TEST()
532 CHECK_XPATH_NUMBER(c, STR("18446744073709551615 mod 3"), 1); in TEST()
533 …CHECK_XPATH_NUMBER(c, STR("11579208923731619542357098500868790785326998466564056403945758400791312… in TEST()
534 …CHECK_XPATH_NUMBER(c, STR("11579208923731619542357098500868790785326998466564056403945758400791312… in TEST()