summaryrefslogtreecommitdiff
path: root/test/test-utils.js
diff options
context:
space:
mode:
authorGravatar Nate Moore <natemoo-re@users.noreply.github.com> 2021-04-21 11:14:44 -0500
committerGravatar GitHub <noreply@github.com> 2021-04-21 11:14:44 -0500
commit54409a0702e4fe41e44420db9c603124207ecb20 (patch)
tree2ad25e9e23887ab46edab48e832dfd3ae104f041 /test/test-utils.js
parent76932822b8fff54e56812b7fc90450904ad276ae (diff)
downloadastro-54409a0702e4fe41e44420db9c603124207ecb20.tar.gz
astro-54409a0702e4fe41e44420db9c603124207ecb20.tar.zst
astro-54409a0702e4fe41e44420db9c603124207ecb20.zip
Prettier support for `.astro` files (#106)
* docs: fix readme * chore: scaffold prettier plugin * chore(prettier): switch to cjs * test(prettier): scaffold prettier tests * test(prettier): add simple prettier tests * feat(prettier): first pass * refactor: expose parser as CJS export * test(prettier): add long expression * refactor(prettier): use Astro parser + built-in prettier doc for prettier plugin * chore: remove parser from git * chore: add prettier-plugin-astro `build` to workflow * chore: update package-lock * chore: do not build prettier-plugin-astro * fix: update engines * chore: remove NPM restriction * chore: fix workflow paths * chore: update build script * test: fix prettier expr test * chore: fix parser build on windows * refactor: add parser tsconfig, extending base config * chore: relax ban-ts-comment * chore: fix lint issue Co-authored-by: Nate Moore <nate@skypack.dev>
Diffstat (limited to 'test/test-utils.js')
-rw-r--r--test/test-utils.js13
1 files changed, 13 insertions, 0 deletions
diff --git a/test/test-utils.js b/test/test-utils.js
index 93bf28788..5d5182636 100644
--- a/test/test-utils.js
+++ b/test/test-utils.js
@@ -1,5 +1,18 @@
import cheerio from 'cheerio';
+import prettier from 'prettier';
+import { fileURLToPath } from 'url';
/** load html */
export function doc(html) {
return cheerio.load(html);
}
+
+/**
+ * format the contents of an astro file
+ * @param contents {string}
+ */
+export function format(contents) {
+ return prettier.format(contents, {
+ parser: 'astro',
+ plugins: [fileURLToPath(new URL('../prettier-plugin-astro', import.meta.url))]
+ })
+}