|
|
|
|
@ -8,7 +8,7 @@ import {
@@ -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 {
@@ -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")!);
@@ -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", () => {
@@ -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", () => {
@@ -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); |
|
|
|
|
|