aboutsummaryrefslogtreecommitdiff
path: root/test/utils.js
diff options
context:
space:
mode:
authorJacob Scearcy <jacobscearcy@gmail.com>2024-05-06 06:42:35 -0700
committerGitHub <noreply@github.com>2024-05-06 14:42:35 +0100
commit80e2bd66f54bca88a749d40784828d29bae8995f (patch)
tree587a8b2d24f09e1955f11ab1ae7ca1e16084d4e1 /test/utils.js
parent8adbae91d3e7d526b5950e2299736ab915dc5489 (diff)
downloadlustre-80e2bd66f54bca88a749d40784828d29bae8995f.tar.gz
lustre-80e2bd66f54bca88a749d40784828d29bae8995f.zip
๐Ÿ”€ Use vitest for runtime/vdom testing. (#124)
* ๐Ÿงช move tests into test directory, bump birdie to ignore non-gleam files * implement feedback * add comments, update doc
Diffstat (limited to 'test/utils.js')
-rw-r--r--test/utils.js29
1 files changed, 29 insertions, 0 deletions
diff --git a/test/utils.js b/test/utils.js
new file mode 100644
index 0000000..c3abaee
--- /dev/null
+++ b/test/utils.js
@@ -0,0 +1,29 @@
+import { parseHTML } from 'linkedom';
+import { vi } from 'vitest';
+
+// Parse the starting state of the basic starting template
+export function setupDOM() {
+ const result = parseHTML(`
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta charset="UTF-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+
+ <title>๐Ÿšง {app_name}</title>
+
+ </head>
+
+ <body>
+ <div id="app"></div>
+ </body>
+</html>`);
+
+ global.HTMLElement = result.HTMLElement;
+ global.Node = result.Node;
+ global.document = result.document;
+ global.window = result.window;
+ global.window.requestAnimationFrame = vi.fn().mockImplementation((cb) => cb());
+
+ return result;
+} \ No newline at end of file