diff options
author | Ian Campbell <ipcampbell@gmail.com> | 2019-07-26 11:52:34 -0400 |
---|---|---|
committer | Ian Campbell <ipcampbell@gmail.com> | 2019-10-21 18:20:43 -0400 |
commit | 9017d3ef9ce06a3662f6c87becffa7d7143fb571 (patch) | |
tree | 914e2d7dc2db5cb8158fc3f43cac3b6bebe5a1a9 /test | |
parent | 67d0ccc398ca7650bb2c774a94d098bee3049169 (diff) | |
download | ale-9017d3ef9ce06a3662f6c87becffa7d7143fb571.zip |
Add StandardJS for TypeScript linting and fixing.
Diffstat (limited to 'test')
-rw-r--r-- | test/command_callback/test_standardts_command_callback.vader | 43 | ||||
-rw-r--r-- | test/fixers/test_standardts_fixer_callback.vader | 31 |
2 files changed, 74 insertions, 0 deletions
diff --git a/test/command_callback/test_standardts_command_callback.vader b/test/command_callback/test_standardts_command_callback.vader new file mode 100644 index 00000000..d769e712 --- /dev/null +++ b/test/command_callback/test_standardts_command_callback.vader @@ -0,0 +1,43 @@ +Before: + call ale#assert#SetUpLinterTest('typescript', 'standard') + call ale#test#SetFilename('testfile.js') + unlet! b:executable + +After: + call ale#assert#TearDownLinterTest() + +Execute(bin/cmd.js paths should be preferred): + call ale#test#SetFilename('standard-test-files/with-cmd/testfile.js') + + let b:executable = ale#path#Simplify( + \ g:dir + \ . '/standard-test-files/with-cmd/node_modules/standard/bin/cmd.js' + \) + + AssertLinter b:executable, + \ (has('win32') ? 'node.exe ' : '') + \ . ale#Escape(b:executable) + \ . ' --stdin %s' + +Execute(.bin directories should be used too): + call ale#test#SetFilename('standard-test-files/with-bin/testfile.js') + + let b:executable = ale#path#Simplify( + \ g:dir + \ . '/standard-test-files/with-bin/node_modules/.bin/standard' + \) + + AssertLinter b:executable, ale#Escape(b:executable) . ' --stdin %s' + +Execute(The global executable should be used otherwise): + AssertLinter 'standard', ale#Escape('standard') . ' --stdin %s' + +Execute(The global executable should be configurable): + let b:ale_typescript_standard_executable = 'foobar' + + AssertLinter 'foobar', ale#Escape('foobar') . ' --stdin %s' + +Execute(The options should be configurable): + let b:ale_typescript_standard_options = '--wat' + + AssertLinter 'standard', ale#Escape('standard') . ' --wat --stdin %s' diff --git a/test/fixers/test_standardts_fixer_callback.vader b/test/fixers/test_standardts_fixer_callback.vader new file mode 100644 index 00000000..092465f5 --- /dev/null +++ b/test/fixers/test_standardts_fixer_callback.vader @@ -0,0 +1,31 @@ +Before: + call ale#test#SetDirectory('/testplugin/test/fixers') + + unlet! b:ale_typescript_standard_executable + unlet! b:ale_typescript_standard_options + +After: + call ale#test#RestoreDirectory() + +Execute(The executable path should be correct): + call ale#test#SetFilename('../eslint-test-files/react-app/subdir/testfile.js') + + AssertEqual + \ { + \ 'read_temporary_file': 1, + \ 'command': (has('win32') ? 'node.exe ' : '') + \ . ale#Escape(ale#path#Simplify(g:dir . '/../eslint-test-files/react-app/node_modules/standard/bin/cmd.js')) + \ . ' --fix %t', + \ }, + \ ale#fixers#standardts#Fix(bufnr('')) + +Execute(Custom options should be supported): + let b:ale_typescript_standard_use_global = 1 + let b:ale_typescript_standard_options = '--foo-bar' + + AssertEqual + \ { + \ 'read_temporary_file': 1, + \ 'command': ale#Escape('standard') . ' --foo-bar --fix %t', + \ }, + \ ale#fixers#standardts#Fix(bufnr('')) |