From 1fe771ebac2ab49f0aecae4db985fa7e51d4989b Mon Sep 17 00:00:00 2001 From: unadlib Date: Mon, 25 Mar 2024 01:41:16 +0800 Subject: [PATCH] test(case): add testing --- test/index.test.ts | 59 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/test/index.test.ts b/test/index.test.ts index 4bb7ca7..21eed9c 100644 --- a/test/index.test.ts +++ b/test/index.test.ts @@ -1425,5 +1425,64 @@ describe('useTravel', () => { ], } `); + + act(() => controls.archive()); + [nextState, setState, controls] = result.current; + + expect(nextState).toEqual(8); + expect(controls.position).toEqual(3); + expect(controls.getHistory()).toEqual([3, 4, 5, 8]); + expect(controls.canBack()).toBe(true); + expect(controls.canForward()).toBe(false); + expect(controls.patches).toMatchInlineSnapshot(` + { + "inversePatches": [ + [ + { + "op": "replace", + "path": [], + "value": 3, + }, + ], + [ + { + "op": "replace", + "path": [], + "value": 4, + }, + ], + [ + { + "op": "replace", + "path": [], + "value": 5, + }, + ], + ], + "patches": [ + [ + { + "op": "replace", + "path": [], + "value": 4, + }, + ], + [ + { + "op": "replace", + "path": [], + "value": 5, + }, + ], + [ + { + "op": "replace", + "path": [], + "value": 8, + }, + ], + ], + } + `); }); });