()
| 10 | let checkpoints: Checkpoints; |
| 11 | |
| 12 | const setContent = () => { |
| 13 | const getState = (first?: boolean): [Id, Tables, Values] => [ |
| 14 | first |
| 15 | ? (checkpoints.getCheckpointIds()[1] as Id) |
| 16 | : checkpoints.addCheckpoint(), |
| 17 | store.getTables(), |
| 18 | store.getValues(), |
| 19 | ]; |
| 20 | const listener = createCheckpointsListener(checkpoints); |
| 21 | const listenerId = listener.listenToCheckpoints('setContent'); |
| 22 | const c0 = getState(true); |
| 23 | |
| 24 | store.setTables({t1: {r1: {c1: 1}}}).setValues({v1: 1}); |
| 25 | expect(checkpoints.getCheckpointIds()).toEqual([[c0[0]], undefined, []]); |
| 26 | expectChanges(listener, 'setContent', [[c0[0]], undefined, []]); |
| 27 | store.setCell('t1', 'r1', 'c2', 2); |
| 28 | store.delCell('t1', 'r1', 'c1'); |
| 29 | store.setCell('t1', 'r1', 'c2', '2'); |
| 30 | store.setValue('v2', 2); |
| 31 | store.delValue('v1'); |
| 32 | store.setValue('v2', '2'); |
| 33 | const c1 = getState(); |
| 34 | |
| 35 | expectChanges(listener, 'setContent', [[c0[0]], c1[0], []]); |
| 36 | store.setRow('t1', 'r1', {c1: '1'}); |
| 37 | expectChanges(listener, 'setContent', [[c0[0], c1[0]], undefined, []]); |
| 38 | store.delRow('t1', 'r1'); |
| 39 | store.setRow('t1', 'r1', {c2: 2}); |
| 40 | store.setRow('t1', 'r1', {c1: 1}); |
| 41 | store.setPartialRow('t1', 'r1', {c2: 2}); |
| 42 | store.addRow('t2', {c2: 2}); |
| 43 | store.delValues(); |
| 44 | store.setValues({v3: 3}); |
| 45 | store.setPartialValues({v4: 4}); |
| 46 | const c2 = getState(); |
| 47 | |
| 48 | expectChanges(listener, 'setContent', [[c0[0], c1[0]], c2[0], []]); |
| 49 | store.setTable('t1', {r1: {c1: 1}}); |
| 50 | expectChanges(listener, 'setContent', [[c0[0], c1[0], c2[0]], undefined, []]); |
| 51 | store.delTable('t1'); |
| 52 | store.setTable('t1', {r1: {c1: 1}}); |
| 53 | store.setTable('t1', {r2: {c2: 1}}); |
| 54 | store.setTable('t2', {r2: {c2: 2}}); |
| 55 | const c3 = getState(); |
| 56 | |
| 57 | expectChanges(listener, 'setContent', [[c0[0], c1[0], c2[0]], c3[0], []]); |
| 58 | store.setTables({t1: {r1: {c1: 1}}}); |
| 59 | expectChanges(listener, 'setContent', [ |
| 60 | [c0[0], c1[0], c2[0], c3[0]], |
| 61 | undefined, |
| 62 | [], |
| 63 | ]); |
| 64 | store.delTables(); |
| 65 | store.setTables({t1: {r1: {c1: 1}}}); |
| 66 | store.setTables({t2: {r2: {c2: 2}}}); |
| 67 | const c4 = getState(); |
| 68 | |
| 69 | expectChanges(listener, 'setContent', [ |
no test coverage detected
searching dependent graphs…