aboutsummaryrefslogtreecommitdiff
path: root/tests/format.test.ts
diff options
context:
space:
mode:
authornetop://ウィビ <paul@webb.page>2026-04-24 16:37:33 -0700
committernetop://ウィビ <paul@webb.page>2026-04-24 16:37:33 -0700
commit510fd8cbe53abb39cba2c7cbaaefcf2783dc0066 (patch)
tree8f753a33c475b285f2a297785d34cda3b0a8faed /tests/format.test.ts
parent261f3bdb77799009344aab4a60686b7186ebd3b0 (diff)
downloadgraphiql-510fd8cbe53abb39cba2c7cbaaefcf2783dc0066.tar.gz
graphiql-510fd8cbe53abb39cba2c7cbaaefcf2783dc0066.zip
Implement v0.6-1.0: shortcuts, format, export/import, splitter, timing, APQ
- v0.6: matchShortcut + format(); Cmd+Shift+Enter/W/F + Cmd+Alt+arrows - v0.7: SessionStore.exportAll/importTabs with version-1 validator - v0.8: Splitter component + four resize handles persisted under layout.* - v0.10: createApqFetcher (HTTP-only) wrapping shared http-body helpers - Drop .svelte re-exports from index.ts for multi-entry JSR/npm publishing
Diffstat (limited to 'tests/format.test.ts')
-rw-r--r--tests/format.test.ts28
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/format.test.ts b/tests/format.test.ts
new file mode 100644
index 0000000..ae5d40c
--- /dev/null
+++ b/tests/format.test.ts
@@ -0,0 +1,28 @@
+
+
+
+
+/*** IMPORT ------------------------------------------- ***/
+
+import { expect, test } from "vitest";
+
+/*** UTILITY ------------------------------------------ ***/
+
+import { format } from "../source/library/graphql/format.ts";
+
+/*** TESTS -------------------------------------------- ***/
+
+test("format pretty-prints a valid query", () => {
+ const input = "query Foo{viewer{id name}}";
+ const expected = "query Foo {\n viewer {\n id\n name\n }\n}";
+ expect(format(input)).toEqual(expected);
+});
+
+test("format returns the input unchanged on parse failure", () => {
+ const input = "query { ...";
+ expect(format(input)).toEqual(input);
+});
+
+test("format returns empty string for empty input", () => {
+ expect(format("")).toEqual("");
+});