Skip to content

Commit e6b9117

Browse files
committed
chore: add more unit tests for function sort
1 parent 46a9d61 commit e6b9117

File tree

1 file changed

+113
-2
lines changed

1 file changed

+113
-2
lines changed

test-suite/compile.test.json

Lines changed: 113 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -339,7 +339,20 @@
339339
},
340340
{
341341
"category": "sort",
342-
"description": "should sort an array objects",
342+
"description": "should sort an array with booleans",
343+
"tests": [
344+
{ "input": [true, false], "query": ["sort"], "output": [false, true] },
345+
{ "input": [false, true], "query": ["sort"], "output": [false, true] },
346+
{
347+
"input": [false, true, false, true],
348+
"query": ["sort"],
349+
"output": [false, false, true, true]
350+
}
351+
]
352+
},
353+
{
354+
"category": "sort",
355+
"description": "should sort an array with objects",
343356
"tests": [
344357
{
345358
"input": [{ "score": -2 }, { "score": 5 }, { "score": 3 }],
@@ -350,7 +363,7 @@
350363
},
351364
{
352365
"category": "sort",
353-
"description": "should sort an array objects (desc)",
366+
"description": "should sort an array with objects (desc)",
354367
"tests": [
355368
{
356369
"input": [{ "score": -2 }, { "score": 5 }, { "score": 3 }],
@@ -385,16 +398,114 @@
385398
"category": "sort",
386399
"description": "should sort mixed types (boolean, number, string, other)",
387400
"tests": [
401+
{ "input": [true, 0], "query": ["sort"], "output": [true, 0] },
402+
{ "input": [0, false], "query": ["sort"], "output": [false, 0] },
403+
{ "input": [2.4, true], "query": ["sort"], "output": [true, 2.4] },
404+
{ "input": [3, "B"], "query": ["sort"], "output": [3, "B"] },
405+
{ "input": ["B", 3], "query": ["sort"], "output": [3, "B"] },
406+
{ "input": ["A", true], "query": ["sort"], "output": [true, "A"] },
407+
{ "input": [2, [1]], "query": ["sort"], "output": [2, [1]] },
408+
{ "input": [[1], 2], "query": ["sort"], "output": [2, [1]] },
409+
{ "input": [{ "id": 0 }, 2], "query": ["sort"], "output": [2, { "id": 0 }] },
410+
{ "input": [2, { "id": 0 }, 3], "query": ["sort"], "output": [2, 3, { "id": 0 }] },
411+
{
412+
"input": [{ "id": 2 }, { "id": 1 }],
413+
"query": ["sort"],
414+
"output": [{ "id": 2 }, { "id": 1 }]
415+
},
416+
{ "input": [{ "id": 0 }, [1]], "query": ["sort"], "output": [{ "id": 0 }, [1]] },
417+
{ "input": [[1], { "id": 0 }], "query": ["sort"], "output": [[1], { "id": 0 }] },
418+
{ "input": [[2], [1]], "query": ["sort"], "output": [[2], [1]] },
388419
{
389420
"input": [3, "B", true, -1, false, { "id": 2 }, "A", [3], { "id": 1 }, [2], 2],
390421
"query": ["sort"],
391422
"output": [false, true, -1, 2, 3, "A", "B", { "id": 2 }, [3], { "id": 1 }, [2]]
423+
}
424+
]
425+
},
426+
{
427+
"category": "sort",
428+
"description": "should sort mixed types (boolean, number, string, other) in ASC order",
429+
"tests": [
430+
{ "input": [true, 0], "query": ["sort", ["get"], "asc"], "output": [true, 0] },
431+
{ "input": [0, false], "query": ["sort", ["get"], "asc"], "output": [false, 0] },
432+
{ "input": [2.4, true], "query": ["sort", ["get"], "asc"], "output": [true, 2.4] },
433+
{ "input": [3, "B"], "query": ["sort", ["get"], "asc"], "output": [3, "B"] },
434+
{ "input": ["B", 3], "query": ["sort", ["get"], "asc"], "output": [3, "B"] },
435+
{ "input": ["A", true], "query": ["sort", ["get"], "asc"], "output": [true, "A"] },
436+
{ "input": [2, [1]], "query": ["sort", ["get"], "asc"], "output": [2, [1]] },
437+
{ "input": [[1], 2], "query": ["sort", ["get"], "asc"], "output": [2, [1]] },
438+
{
439+
"input": [{ "id": 0 }, 2],
440+
"query": ["sort", ["get"], "asc"],
441+
"output": [2, { "id": 0 }]
442+
},
443+
{
444+
"input": [2, { "id": 0 }, 3],
445+
"query": ["sort", ["get"], "asc"],
446+
"output": [2, 3, { "id": 0 }]
447+
},
448+
{
449+
"input": [{ "id": 2 }, { "id": 1 }],
450+
"query": ["sort", ["get"], "asc"],
451+
"output": [{ "id": 2 }, { "id": 1 }]
452+
},
453+
{
454+
"input": [{ "id": 0 }, [1]],
455+
"query": ["sort", ["get"], "asc"],
456+
"output": [{ "id": 0 }, [1]]
457+
},
458+
{
459+
"input": [[1], { "id": 0 }],
460+
"query": ["sort", ["get"], "asc"],
461+
"output": [[1], { "id": 0 }]
392462
},
463+
{ "input": [[2], [1]], "query": ["sort", ["get"], "asc"], "output": [[2], [1]] },
393464
{
394465
"input": [3, "B", true, -1, false, { "id": 2 }, "A", [3], { "id": 1 }, [2], 2],
395466
"query": ["sort", ["get"], "asc"],
396467
"output": [false, true, -1, 2, 3, "A", "B", { "id": 2 }, [3], { "id": 1 }, [2]]
468+
}
469+
]
470+
},
471+
{
472+
"category": "sort",
473+
"description": "should sort mixed types (boolean, number, string, other) in DESC order",
474+
"tests": [
475+
{ "input": [true, 0], "query": ["sort", ["get"], "desc"], "output": [0, true] },
476+
{ "input": [0, false], "query": ["sort", ["get"], "desc"], "output": [0, false] },
477+
{ "input": [2.4, true], "query": ["sort", ["get"], "desc"], "output": [2.4, true] },
478+
{ "input": [3, "B"], "query": ["sort", ["get"], "desc"], "output": ["B", 3] },
479+
{ "input": ["B", 3], "query": ["sort", ["get"], "desc"], "output": ["B", 3] },
480+
{ "input": ["A", true], "query": ["sort", ["get"], "desc"], "output": ["A", true] },
481+
{ "input": [2, [1]], "query": ["sort", ["get"], "desc"], "output": [[1], 2] },
482+
{ "input": [[1], 2], "query": ["sort", ["get"], "desc"], "output": [[1], 2] },
483+
{
484+
"input": [{ "id": 0 }, 2],
485+
"query": ["sort", ["get"], "desc"],
486+
"output": [{ "id": 0 }, 2]
487+
},
488+
{
489+
"input": [2, { "id": 0 }, 3],
490+
"query": ["sort", ["get"], "desc"],
491+
"output": [{ "id": 0 }, 3, 2]
492+
},
493+
{
494+
"input": [{ "id": 2 }, { "id": 1 }],
495+
"query": ["sort", ["get"], "desc"],
496+
"output": [{ "id": 2 }, { "id": 1 }]
497+
},
498+
{
499+
"input": [{ "id": 0 }, [1]],
500+
"query": ["sort", ["get"], "desc"],
501+
"output": [{ "id": 0 }, [1]]
502+
},
503+
{
504+
"input": [[1], { "id": 0 }],
505+
"query": ["sort", ["get"], "desc"],
506+
"output": [[1], { "id": 0 }]
397507
},
508+
{ "input": [[2], [1]], "query": ["sort", ["get"], "desc"], "output": [[2], [1]] },
398509
{
399510
"input": [3, "B", true, -1, false, { "id": 2 }, "A", [3], { "id": 1 }, [2], 2],
400511
"query": ["sort", ["get"], "desc"],

0 commit comments

Comments
 (0)