@applicaster/zapp-react-native-utils
Version:
Applicaster Zapp React Native utilities package
112 lines (81 loc) • 2.02 kB
text/typescript
import { isEqual } from "../..";
describe("isEqual - byReference", () => {
describe("primitive value", () => {
it("equals", () => {
const prev = {
prop_1: 1,
};
const next = {
prop_1: 1,
};
const byReference = ["prop_1"];
expect(isEqual({ byReference })(prev, next)).toBe(true);
});
it("not equals", () => {
const prev = {
prop_1: 1,
};
const next = {
prop_1: 2,
};
const byReference = ["prop_1"];
expect(isEqual({ byReference })(prev, next)).toBe(false);
});
it("not equals", () => {
const prev = {
prop_1: 1,
};
const next = {
prop_1: undefined,
};
const byReference = ["prop_1"];
expect(isEqual({ byReference })(prev, next)).toBe(false);
});
});
describe("reference value", () => {
it("equals", () => {
const prop_1 = [1, 2, 3];
const prev = {
prop_1: prop_1,
};
const next = {
prop_1: prop_1,
};
const byReference = ["prop_1"];
expect(isEqual({ byReference })(prev, next)).toBe(true);
});
it("not equals", () => {
const prev = {
prop_1: [1, 2, 3],
};
const next = {
prop_1: [1, 2, 3],
};
const byReference = ["prop_1"];
expect(isEqual({ byReference })(prev, next)).toBe(false);
});
it("not equals", () => {
const prev = {
prop_1: [1, 2, 3],
};
const next = {
prop_1: [1, 2, 4],
};
const byReference = ["prop_1"];
expect(isEqual({ byReference })(prev, next)).toBe(false);
});
it("not equals", () => {
const prop_1 = [1, 2, 3];
const prev = {
prop_1,
prop_2: [3, 2, 1],
};
const next = {
prop_1,
prop_2: [3, 2, 1],
};
const byReference = ["prop_1", "prop_2"];
expect(isEqual({ byReference })(prev, next)).toBe(false);
});
});
});