
* Require trailing commas * Add trailing commas * Add trailing commas in testUtils dir * Add trailing commas
55 lines
1.4 KiB
TypeScript
55 lines
1.4 KiB
TypeScript
import { arrayDiff } from "./arrays";
|
|
|
|
const fruits = ["apple", "orange", "strawberry"];
|
|
|
|
const vegetables = ["potato", "onion"];
|
|
|
|
describe("Validate diff results", () => {
|
|
it("Empty arrays", () => {
|
|
const diff = arrayDiff([], []);
|
|
expect(diff).toStrictEqual({ added: [], removed: [], common: [] });
|
|
});
|
|
|
|
it("Compare array with itself", () => {
|
|
const diff = arrayDiff(fruits, fruits);
|
|
expect(diff).toStrictEqual({ added: [], removed: [], common: fruits });
|
|
});
|
|
|
|
it("Added elements to empty", () => {
|
|
const diff = arrayDiff([], vegetables);
|
|
expect(diff).toStrictEqual({
|
|
added: vegetables,
|
|
removed: [],
|
|
common: [],
|
|
});
|
|
});
|
|
|
|
it("Added elements to populated array", () => {
|
|
const diff = arrayDiff(fruits, [...fruits, ...vegetables]);
|
|
expect(diff).toStrictEqual({
|
|
added: vegetables,
|
|
removed: [],
|
|
common: fruits,
|
|
});
|
|
});
|
|
|
|
it("Removed elements", () => {
|
|
const diff = arrayDiff([...fruits, ...vegetables], fruits);
|
|
expect(diff).toStrictEqual({
|
|
added: [],
|
|
removed: vegetables,
|
|
common: fruits,
|
|
});
|
|
});
|
|
|
|
it("Added, removed, and common elements", () => {
|
|
const before = ["a", "b", "c", "d"];
|
|
const after = ["b", "e", "a", "t"];
|
|
const diff = arrayDiff(before, after);
|
|
expect(diff).toStrictEqual({
|
|
added: ["e", "t"],
|
|
removed: ["c", "d"],
|
|
common: ["a", "b"],
|
|
});
|
|
});
|
|
});
|