From 7dcf08d308c7dca5def80c6403f1d21ded97a66a Mon Sep 17 00:00:00 2001 From: Nathan Vasse Date: Thu, 18 Jan 2024 14:38:00 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=A4=A1(react)=20add=20HTMLDialog=20mock?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit As JestDOM does not mock this element, we need to do it in order to make Modal work in test environement. --- .../react/src/tests/HTMLDialogElementMock.ts | 17 +++++++++++++++++ packages/react/src/tests/Setup.ts | 1 + 2 files changed, 18 insertions(+) create mode 100644 packages/react/src/tests/HTMLDialogElementMock.ts diff --git a/packages/react/src/tests/HTMLDialogElementMock.ts b/packages/react/src/tests/HTMLDialogElementMock.ts new file mode 100644 index 0000000..91310de --- /dev/null +++ b/packages/react/src/tests/HTMLDialogElementMock.ts @@ -0,0 +1,17 @@ +HTMLDialogElement.prototype.show = vi.fn(function mock( + this: HTMLDialogElement, +) { + this.open = true; +}); + +HTMLDialogElement.prototype.showModal = vi.fn(function mock( + this: HTMLDialogElement, +) { + this.open = true; +}); + +HTMLDialogElement.prototype.close = vi.fn(function mock( + this: HTMLDialogElement, +) { + this.open = false; +}); diff --git a/packages/react/src/tests/Setup.ts b/packages/react/src/tests/Setup.ts index 6f5f036..6ac27f6 100644 --- a/packages/react/src/tests/Setup.ts +++ b/packages/react/src/tests/Setup.ts @@ -2,6 +2,7 @@ import "@testing-library/jest-dom/vitest"; import createFetchMock from "vitest-fetch-mock"; import { vi } from "vitest"; import "./AnimateMock"; +import "./HTMLDialogElementMock"; const fetchMocker = createFetchMock(vi);