|
@@ -8,7 +8,7 @@ import {
|
|
|
mockBoundingClientRect,
|
|
|
restoreOriginalGetBoundingClientRect,
|
|
|
} from "../tests/test-utils";
|
|
|
-import { queryByText, waitFor } from "@testing-library/react";
|
|
|
+import { queryByText } from "@testing-library/react";
|
|
|
|
|
|
import { FONT_FAMILY, TEXT_ALIGN, VERTICAL_ALIGN } from "../constants";
|
|
|
import {
|
|
@@ -18,6 +18,7 @@ import {
|
|
|
import { API } from "../tests/helpers/api";
|
|
|
import { mutateElement } from "./mutateElement";
|
|
|
import { getOriginalContainerHeightFromCache } from "./textWysiwyg";
|
|
|
+import { getTextEditor } from "../tests/queries/dom";
|
|
|
|
|
|
// Unmount ReactDOM from root
|
|
|
ReactDOM.unmountComponentAtNode(document.getElementById("root")!);
|
|
@@ -25,18 +26,6 @@ ReactDOM.unmountComponentAtNode(document.getElementById("root")!);
|
|
|
const tab = " ";
|
|
|
const mouse = new Pointer("mouse");
|
|
|
|
|
|
-const getTextEditor = async (waitForEditor = false) => {
|
|
|
- const query = () =>
|
|
|
- document.querySelector(
|
|
|
- ".excalidraw-textEditorContainer > textarea",
|
|
|
- ) as HTMLTextAreaElement;
|
|
|
- if (waitForEditor) {
|
|
|
- waitFor(() => expect(query()).not.toBe(null));
|
|
|
- return query();
|
|
|
- }
|
|
|
- return query();
|
|
|
-};
|
|
|
-
|
|
|
const updateTextEditor = (editor: HTMLTextAreaElement, value: string) => {
|
|
|
fireEvent.change(editor, { target: { value } });
|
|
|
editor.dispatchEvent(new Event("input"));
|
|
@@ -206,7 +195,7 @@ describe("textWysiwyg", () => {
|
|
|
|
|
|
mouse.clickAt(text.x + 50, text.y + 50);
|
|
|
|
|
|
- const editor = await getTextEditor();
|
|
|
+ const editor = await getTextEditor(false);
|
|
|
|
|
|
expect(editor).not.toBe(null);
|
|
|
expect(h.state.editingElement?.id).toBe(text.id);
|
|
@@ -228,7 +217,7 @@ describe("textWysiwyg", () => {
|
|
|
|
|
|
mouse.doubleClickAt(text.x + 50, text.y + 50);
|
|
|
|
|
|
- const editor = await getTextEditor();
|
|
|
+ const editor = await getTextEditor(false);
|
|
|
|
|
|
expect(editor).not.toBe(null);
|
|
|
expect(h.state.editingElement?.id).toBe(text.id);
|