mirror of
https://github.com/ajayyy/SponsorBlockServer.git
synced 2025-12-06 19:47:00 +03:00
add tests, new partialDeepEquals
This commit is contained in:
134
test/cases/testUtils.ts
Normal file
134
test/cases/testUtils.ts
Normal file
@@ -0,0 +1,134 @@
|
||||
import assert from "assert";
|
||||
|
||||
import { partialDeepEquals } from "../utils";
|
||||
|
||||
describe("Test utils ", () => {
|
||||
it("objectContain", async () => {
|
||||
assert(partialDeepEquals(
|
||||
{
|
||||
name: "John Wick",
|
||||
old: 20,
|
||||
vip: true
|
||||
},
|
||||
{
|
||||
|
||||
}
|
||||
), "Did not match empty expect");
|
||||
assert(partialDeepEquals(
|
||||
[{a: [1,2,3]}, {a: [1,2]}],
|
||||
[{a: [1,2,3]}, {a: [1,2]}]
|
||||
), "Did not match same arrays");
|
||||
assert(partialDeepEquals(
|
||||
{
|
||||
name: "John Wick",
|
||||
old: 20,
|
||||
vip: true
|
||||
},
|
||||
{
|
||||
vip: true,
|
||||
old: 20
|
||||
}
|
||||
), "Did not match same partial properties");
|
||||
// do not match incorrect propeties
|
||||
assert(!partialDeepEquals(
|
||||
{
|
||||
name: "John Wick",
|
||||
old: 20,
|
||||
vip: true
|
||||
},
|
||||
{
|
||||
vip: false,
|
||||
old: 19
|
||||
}
|
||||
), "Matched different properties");
|
||||
// do not match missing property
|
||||
assert(!partialDeepEquals(
|
||||
{
|
||||
name: "John Wick",
|
||||
old: 20,
|
||||
vip: true
|
||||
},
|
||||
{
|
||||
vip: true,
|
||||
child: {
|
||||
name: ""
|
||||
}
|
||||
}
|
||||
));
|
||||
assert(!partialDeepEquals(
|
||||
{
|
||||
name: "John Wick",
|
||||
old: 20,
|
||||
vip: true,
|
||||
child: {
|
||||
name: "a"
|
||||
}
|
||||
},
|
||||
{
|
||||
vip: true,
|
||||
child: {
|
||||
name: ""
|
||||
}
|
||||
}
|
||||
), "Matched incorrect child property");
|
||||
assert(!partialDeepEquals(
|
||||
{
|
||||
name: "John Wick",
|
||||
old: 20,
|
||||
vip: true,
|
||||
child: {
|
||||
name: "a",
|
||||
child: {
|
||||
name: "a",
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
vip: true,
|
||||
child: {
|
||||
name: "a",
|
||||
child: {
|
||||
name: "b",
|
||||
}
|
||||
}
|
||||
}
|
||||
), "Matched incorrected 2-nested property");
|
||||
assert(partialDeepEquals(
|
||||
{
|
||||
name: "John Wick",
|
||||
old: 20,
|
||||
vip: true,
|
||||
child: {
|
||||
name: "a",
|
||||
child: {
|
||||
name: "b",
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
vip: true,
|
||||
child: {
|
||||
name: "a",
|
||||
child: {
|
||||
name: "b",
|
||||
}
|
||||
}
|
||||
}
|
||||
), "Did not match exact child properties");
|
||||
assert(partialDeepEquals(
|
||||
{
|
||||
name: "John Wick",
|
||||
values: [{
|
||||
name: "a",
|
||||
}, {
|
||||
name: "b",
|
||||
}]
|
||||
},
|
||||
{
|
||||
values: [{
|
||||
name: "a",
|
||||
}]
|
||||
}
|
||||
), "Did not match partial child array");
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user