aboutsummaryrefslogtreecommitdiffstats
path: root/packages/excalidraw/tests/queries/toolQueries.ts
diff options
context:
space:
mode:
authorkj_sh6042026-03-15 16:19:35 -0400
committerkj_sh6042026-03-15 16:19:35 -0400
commit6ec259a0e71174651bae95d4628138bf6fd68742 (patch)
tree5e33c6a5ec091ecabfcb257fdc7b6a88ed8754ac /packages/excalidraw/tests/queries/toolQueries.ts
parent16c8578b15c727f22921f8a80a56ee4d4e7f2272 (diff)
refactor: packages/
Diffstat (limited to 'packages/excalidraw/tests/queries/toolQueries.ts')
-rw-r--r--packages/excalidraw/tests/queries/toolQueries.ts25
1 files changed, 25 insertions, 0 deletions
diff --git a/packages/excalidraw/tests/queries/toolQueries.ts b/packages/excalidraw/tests/queries/toolQueries.ts
new file mode 100644
index 0000000..df0afa1
--- /dev/null
+++ b/packages/excalidraw/tests/queries/toolQueries.ts
@@ -0,0 +1,25 @@
+import { queries, buildQueries } from "@testing-library/react";
+import type { ToolType } from "../../types";
+import { TOOL_TYPE } from "../../constants";
+
+const _getAllByToolName = (container: HTMLElement, tool: ToolType | "lock") => {
+ const toolTitle = tool === "lock" ? "lock" : TOOL_TYPE[tool];
+ return queries.getAllByTestId(container, `toolbar-${toolTitle}`);
+};
+
+const getMultipleError = (_container: any, tool: any) =>
+ `Found multiple elements with tool name: ${tool}`;
+const getMissingError = (_container: any, tool: any) =>
+ `Unable to find an element with tool name: ${tool}`;
+
+export const [
+ queryByToolName,
+ getAllByToolName,
+ getByToolName,
+ findAllByToolName,
+ findByToolName,
+] = buildQueries<(ToolType | "lock")[]>(
+ _getAllByToolName,
+ getMultipleError,
+ getMissingError,
+);