summaryrefslogtreecommitdiff
path: root/tests/js/utils.mjs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/js/utils.mjs')
-rw-r--r--tests/js/utils.mjs45
1 files changed, 45 insertions, 0 deletions
diff --git a/tests/js/utils.mjs b/tests/js/utils.mjs
index 1875ce5..94e8eae 100644
--- a/tests/js/utils.mjs
+++ b/tests/js/utils.mjs
@@ -4,6 +4,7 @@ import { runTests } from "../runner.mjs";
import {
eq,
keys,
+ difference,
assocIn,
getIn,
first,
@@ -126,6 +127,49 @@ const test_keys = t => {
});
};
+const test_difference = t => {
+ t.start("difference()");
+
+ t.test("empty values", () => {
+ assert.deepEqual(
+ difference(new Set(), new Set()),
+ new Set(),
+ );
+
+ assert.deepEqual(
+ difference(new Set(), new Set([1, 2])),
+ new Set(),
+ );
+
+ assert.deepEqual(
+ difference(new Set([1, 2]), new Set()),
+ new Set([1, 2]),
+ );
+ });
+
+ t.test("different subsets", () => {
+ assert.deepEqual(
+ difference(new Set([1, 2]), new Set([3, 4])),
+ new Set([1, 2]),
+ );
+
+ assert.deepEqual(
+ difference(new Set([1, 2, 3]), new Set([2, 4, 5])),
+ new Set([1, 3]),
+ );
+
+ assert.deepEqual(
+ difference(new Set([1]), new Set([1, 2, 3, 4, 5])),
+ new Set(),
+ );
+
+ assert.deepEqual(
+ difference(new Set([1, 2, 3]), new Set([1, 2, 3])),
+ new Set(),
+ );
+ });
+};
+
const test_assocIn = t => {
t.start("assocIn()");
@@ -218,6 +262,7 @@ const test_log = t => {
await runTests([
test_eq,
test_keys,
+ test_difference,
test_assocIn,
test_getIn,
test_first,