diff options
author | ghsang <66662835+ghsang@users.noreply.github.com> | 2024-08-14 16:24:22 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-08-14 08:24:22 +0100 |
commit | 954682108d21b412561fb32e3fa766c7ee539984 (patch) | |
tree | 64ade148264a5ce1c8c8bc09ec0b868368090561 /test | |
parent | 48d73c87c3c321e6298755abc5449267192d07e6 (diff) | |
download | ale-954682108d21b412561fb32e3fa766c7ee539984.zip |
Add support for astro (#4780)
* feat: prettier for astro
* feat: eslint for astro
* feat: doc for astro
Diffstat (limited to 'test')
-rw-r--r-- | test/fixers/test_eslint_fixer_callback.vader | 15 | ||||
-rw-r--r-- | test/fixers/test_prettier_fixer_callback.vader | 14 | ||||
-rw-r--r-- | test/linter/test_eslint.vader | 9 | ||||
-rw-r--r-- | test/test-files/eslint/astro-app/.eslintrc.js | 0 | ||||
-rw-r--r-- | test/test-files/eslint/astro-app/node_modules/eslint/bin/eslint.js | 0 | ||||
-rw-r--r-- | test/test-files/eslint/astro-app/package.json | 17 | ||||
-rw-r--r-- | test/test-files/eslint/astro-app/src/pages/index.astro | 16 | ||||
-rw-r--r-- | test/test-files/eslint/astro-app/tsconfig.json | 3 |
8 files changed, 74 insertions, 0 deletions
diff --git a/test/fixers/test_eslint_fixer_callback.vader b/test/fixers/test_eslint_fixer_callback.vader index 2a20243c..5cf58014 100644 --- a/test/fixers/test_eslint_fixer_callback.vader +++ b/test/fixers/test_eslint_fixer_callback.vader @@ -304,3 +304,18 @@ Execute(The eslint_d post-processor should handle failing to connect properly): \ ale#fixers#eslint#ProcessEslintDOutput(bufnr(''), [ \ 'Could not connect', \ ]) + +Execute(The executable path should be correct for astro app): + call ale#test#SetFilename('../test-files/eslint/astro-app/src/pages/index.astro') + + " eslint_d output with an older eslint version is used here. + GivenCommandOutput ['v4.4.1 (eslint_d v5.1.0)'] + AssertFixer + \ { + \ 'read_temporary_file': 1, + \ 'cwd': ale#path#Simplify(g:dir . '/../test-files/eslint/astro-app'), + \ 'command': (has('win32') ? 'node.exe ' : '') + \ . ale#Escape(ale#path#Simplify(g:dir . '/../test-files/eslint/astro-app/node_modules/eslint/bin/eslint.js')) + \ . ' -c ' . ale#Escape(ale#path#Simplify(g:dir . '/../test-files/eslint/astro-app/.eslintrc.js')) + \ . ' --fix %t', + \ } diff --git a/test/fixers/test_prettier_fixer_callback.vader b/test/fixers/test_prettier_fixer_callback.vader index 8da13fcd..5726fbc3 100644 --- a/test/fixers/test_prettier_fixer_callback.vader +++ b/test/fixers/test_prettier_fixer_callback.vader @@ -293,6 +293,20 @@ Execute(Should set --parser based on first filetype of multiple filetypes): \ . ' --stdin-filepath %s --stdin', \ } +Execute(Should set --parser based on first filetype of multiple filetypes): + call ale#test#SetFilename('../test-files/prettier/testfile') + + set filetype=astro + + GivenCommandOutput ['1.6.0'] + AssertFixer + \ { + \ 'cwd': '%s:h', + \ 'command': ale#Escape(g:ale_javascript_prettier_executable) + \ . ' --parser astro' + \ . ' --stdin-filepath %s --stdin', + \ } + Execute(Should set --parser for experimental language, Handlebars): call ale#test#SetFilename('../test-files/prettier/testfile.hbs') diff --git a/test/linter/test_eslint.vader b/test/linter/test_eslint.vader index f4f2e309..6c05fc6d 100644 --- a/test/linter/test_eslint.vader +++ b/test/linter/test_eslint.vader @@ -76,3 +76,12 @@ Execute(eslint.js should be run from a containing project with .yarn/sdks): AssertLinter b:executable, \ (has('win32') ? ale#Escape('node.exe') . ' ' : '') \ . ale#Escape(b:executable) . b:args + +Execute(astro directories should be detected correctly): + call ale#test#SetFilename('../test-files/eslint/astro-app/src/pages/index.astro') + + let b:executable = ale#path#Simplify(g:dir . '/../test-files/eslint/astro-app/node_modules/eslint/bin/eslint.js') + AssertLinterCwd ale#path#Simplify(g:dir . '/../test-files/eslint/astro-app') + AssertLinter b:executable, + \ (has('win32') ? ale#Escape('node.exe') . ' ' : '') + \ . ale#Escape(b:executable) . b:args diff --git a/test/test-files/eslint/astro-app/.eslintrc.js b/test/test-files/eslint/astro-app/.eslintrc.js new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/test/test-files/eslint/astro-app/.eslintrc.js diff --git a/test/test-files/eslint/astro-app/node_modules/eslint/bin/eslint.js b/test/test-files/eslint/astro-app/node_modules/eslint/bin/eslint.js new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/test/test-files/eslint/astro-app/node_modules/eslint/bin/eslint.js diff --git a/test/test-files/eslint/astro-app/package.json b/test/test-files/eslint/astro-app/package.json new file mode 100644 index 00000000..527a99fc --- /dev/null +++ b/test/test-files/eslint/astro-app/package.json @@ -0,0 +1,17 @@ +{ + "name": "astro-app", + "type": "module", + "version": "0.0.1", + "scripts": { + "dev": "astro dev", + "start": "astro dev", + "build": "astro check && astro build", + "preview": "astro preview", + "astro": "astro" + }, + "dependencies": { + "astro": "^4.8.3", + "@astrojs/check": "^0.7.0", + "typescript": "^5.4.5" + } +}
\ No newline at end of file diff --git a/test/test-files/eslint/astro-app/src/pages/index.astro b/test/test-files/eslint/astro-app/src/pages/index.astro new file mode 100644 index 00000000..2d141073 --- /dev/null +++ b/test/test-files/eslint/astro-app/src/pages/index.astro @@ -0,0 +1,16 @@ +--- + +--- + +<html lang="en"> + <head> + <meta charset="utf-8" /> + <link rel="icon" type="image/svg+xml" href="/favicon.svg" /> + <meta name="viewport" content="width=device-width" /> + <meta name="generator" content={Astro.generator} /> + <title>Astro</title> + </head> + <body> + <h1>Astro</h1> + </body> +</html> diff --git a/test/test-files/eslint/astro-app/tsconfig.json b/test/test-files/eslint/astro-app/tsconfig.json new file mode 100644 index 00000000..77da9dd0 --- /dev/null +++ b/test/test-files/eslint/astro-app/tsconfig.json @@ -0,0 +1,3 @@ +{ + "extends": "astro/tsconfigs/strict" +}
\ No newline at end of file |