Add test for immutable operations
This commit is contained in:
parent
fe265f1184
commit
c177097234
|
|
@ -19,7 +19,6 @@ export const removeAtIndex = (arr, idx) => {
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
export const replaceAtIndex = (arr, idx, el) => {
|
export const replaceAtIndex = (arr, idx, el) => {
|
||||||
console.log(idx);
|
|
||||||
return [
|
return [
|
||||||
...arr.slice(0, idx),
|
...arr.slice(0, idx),
|
||||||
el,
|
el,
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,63 @@
|
||||||
|
import {removeAtIndex, replaceAtIndex, insertAtIndex, pushToArray } from '@/graphql/immutable-operations';
|
||||||
describe('Cache operations', () => {
|
describe('Cache operations', () => {
|
||||||
it('fails', () => {
|
it('removes at index', () => {
|
||||||
// expect(1).toEqual(2);
|
const original = [1, 2, 3];
|
||||||
|
const copy = removeAtIndex(original, 1);
|
||||||
|
expect(original.length).toBe(3);
|
||||||
|
expect(original).toEqual([1, 2, 3]);
|
||||||
|
expect(copy.length).toBe(2);
|
||||||
|
expect(copy).toEqual([1, 3]);
|
||||||
|
|
||||||
|
original.push(4);
|
||||||
|
expect(original.length).toBe(4);
|
||||||
|
expect(original).toEqual([1, 2, 3, 4]);
|
||||||
|
expect(copy.length).toBe(2);
|
||||||
|
expect(copy).toEqual([1, 3]);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('replaces at index', () => {
|
||||||
|
const original = [1, 2, 3];
|
||||||
|
const copy = replaceAtIndex(original, 1, 234);
|
||||||
|
expect(original.length).toBe(3);
|
||||||
|
expect(original).toEqual([1, 2, 3]);
|
||||||
|
expect(copy.length).toBe(3);
|
||||||
|
expect(copy).toEqual([1, 234, 3]);
|
||||||
|
|
||||||
|
original.push(4);
|
||||||
|
expect(original.length).toBe(4);
|
||||||
|
expect(original).toEqual([1, 2, 3, 4]);
|
||||||
|
expect(copy.length).toBe(3);
|
||||||
|
expect(copy).toEqual([1, 234, 3]);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('inserts at index', () => {
|
||||||
|
const original = [1, 2, 3];
|
||||||
|
const copy = insertAtIndex(original, 1, 234);
|
||||||
|
expect(original.length).toBe(3);
|
||||||
|
expect(original).toEqual([1, 2, 3]);
|
||||||
|
expect(copy.length).toBe(4);
|
||||||
|
expect(copy).toEqual([1, 234, 2, 3]);
|
||||||
|
|
||||||
|
original.push(4);
|
||||||
|
expect(original.length).toBe(4);
|
||||||
|
expect(original).toEqual([1, 2, 3, 4]);
|
||||||
|
expect(copy.length).toBe(4);
|
||||||
|
expect(copy).toEqual([1, 234, 2, 3]);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('pushed to array', () => {
|
||||||
|
const original = [1, 2, 3];
|
||||||
|
const copy = pushToArray(original, 5);
|
||||||
|
expect(original.length).toBe(3);
|
||||||
|
expect(original).toEqual([1, 2, 3]);
|
||||||
|
expect(copy.length).toBe(4);
|
||||||
|
expect(copy).toEqual([1, 2, 3, 5]);
|
||||||
|
|
||||||
|
original.push(4);
|
||||||
|
expect(original.length).toBe(4);
|
||||||
|
expect(original).toEqual([1, 2, 3, 4]);
|
||||||
|
expect(copy.length).toBe(4);
|
||||||
|
expect(copy).toEqual([1, 2, 3, 5]);
|
||||||
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue