From 2760cf7018893b42c4ae5c750a7f1d38669aa821 Mon Sep 17 00:00:00 2001 From: Oskar Grunning Date: Thu, 6 Dec 2018 19:23:31 +0100 Subject: refactor sasslint linter (#2077) Previous implementation required one to have sass-lint globally. This allows you to have it locally, override the executable and add options. --- .../test_scss_sasslint_command_callback.vader | 43 ++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 test/command_callback/test_scss_sasslint_command_callback.vader (limited to 'test/command_callback/test_scss_sasslint_command_callback.vader') diff --git a/test/command_callback/test_scss_sasslint_command_callback.vader b/test/command_callback/test_scss_sasslint_command_callback.vader new file mode 100644 index 00000000..1695190a --- /dev/null +++ b/test/command_callback/test_scss_sasslint_command_callback.vader @@ -0,0 +1,43 @@ +Before: + call ale#assert#SetUpLinterTest('scss', 'sasslint') + call ale#test#SetFilename('test.scss') + unlet! b:executable + +After: + call ale#assert#TearDownLinterTest() + +Execute(should default to source, bin/sass-lint.js): + call ale#test#SetFilename('sasslint-test-files/with-source/test.scss') + + let b:executable = ale#path#Simplify( + \ g:dir + \ . '/sasslint-test-files/with-source/node_modules/sass-lint/bin/sass-lint.js' + \) + + AssertLinter b:executable, + \ (has('win32') ? 'node.exe ' : '') + \ . ale#Escape(b:executable) + \ . ' -v -q -f compact %t' + +Execute(should fallback to bin, .bin/sass-lint): + call ale#test#SetFilename('sasslint-test-files/with-bin/test.scss') + + let b:executable = ale#path#Simplify( + \ g:dir + \ . '/sasslint-test-files/with-bin/node_modules/.bin/sass-lint' + \) + + AssertLinter b:executable, ale#Escape(b:executable) . ' -v -q -f compact %t' + +Execute(should fallback to global bin): + AssertLinter 'sass-lint', ale#Escape('sass-lint') . ' -v -q -f compact %t' + +Execute(The global executable should be configurable): + let b:ale_scss_sasslint_executable = 'foo' + + AssertLinter 'foo', ale#Escape('foo') . ' -v -q -f compact %t' + +Execute(The options should be configurable): + let b:ale_scss_sasslint_options = '--bar' + + AssertLinter 'sass-lint', ale#Escape('sass-lint') . ' --bar -v -q -f compact %t' -- cgit v1.2.3