diff --git a/src/components/AnimatePresence/__tests__/AnimatePresence.test.tsx b/src/components/AnimatePresence/__tests__/AnimatePresence.test.tsx index 45001c8d4..5719dbe66 100644 --- a/src/components/AnimatePresence/__tests__/AnimatePresence.test.tsx +++ b/src/components/AnimatePresence/__tests__/AnimatePresence.test.tsx @@ -336,6 +336,37 @@ describe("AnimatePresence", () => { return await expect(promise).resolves.toBe(1) }) + test("Immediately remove child if no exit animations defined", async () => { + const promise = new Promise((resolve) => { + const Component = ({ i }: { i: number }) => { + return ( + + + + ) + } + + const { rerender, getByTestId } = render() + rerender() + setTimeout(() => { + rerender() + rerender() + }, 50) + setTimeout(() => { + rerender() + rerender() + resolve(getByTestId("2")) + }, 150) + }) + + return await expect(promise).resolves.toBeTruthy() + }) + test("Exit variants are triggered with `AnimatePresence.custom`, not that of the element.", async () => { const variants = { enter: { x: 0, transition: { type: false } },