summaryrefslogtreecommitdiff
path: root/test/command_callback
diff options
context:
space:
mode:
Diffstat (limited to 'test/command_callback')
-rw-r--r--test/command_callback/bib_paths/dummy.bib0
-rwxr-xr-xtest/command_callback/sasslint-test-files/with-bin/node_modules/.bin/sass-lint0
-rwxr-xr-xtest/command_callback/sasslint-test-files/with-source/node_modules/sass-lint/bin/sass-lint.js0
-rw-r--r--test/command_callback/test_bib_bibclean_command_callback.vader24
-rw-r--r--test/command_callback/test_javalsp_command_callback.vader6
-rw-r--r--test/command_callback/test_pydocstyle_command_callback.vader39
-rw-r--r--test/command_callback/test_sass_sasslint_command_callback.vader43
-rw-r--r--test/command_callback/test_sasslint_command_callback.vader11
-rw-r--r--test/command_callback/test_scalac_command_callback.vader2
-rw-r--r--test/command_callback/test_scss_sasslint_command_callback.vader43
10 files changed, 155 insertions, 13 deletions
diff --git a/test/command_callback/bib_paths/dummy.bib b/test/command_callback/bib_paths/dummy.bib
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/test/command_callback/bib_paths/dummy.bib
diff --git a/test/command_callback/sasslint-test-files/with-bin/node_modules/.bin/sass-lint b/test/command_callback/sasslint-test-files/with-bin/node_modules/.bin/sass-lint
new file mode 100755
index 00000000..e69de29b
--- /dev/null
+++ b/test/command_callback/sasslint-test-files/with-bin/node_modules/.bin/sass-lint
diff --git a/test/command_callback/sasslint-test-files/with-source/node_modules/sass-lint/bin/sass-lint.js b/test/command_callback/sasslint-test-files/with-source/node_modules/sass-lint/bin/sass-lint.js
new file mode 100755
index 00000000..e69de29b
--- /dev/null
+++ b/test/command_callback/sasslint-test-files/with-source/node_modules/sass-lint/bin/sass-lint.js
diff --git a/test/command_callback/test_bib_bibclean_command_callback.vader b/test/command_callback/test_bib_bibclean_command_callback.vader
new file mode 100644
index 00000000..fa6f7d33
--- /dev/null
+++ b/test/command_callback/test_bib_bibclean_command_callback.vader
@@ -0,0 +1,24 @@
+Before:
+ call ale#assert#SetUpLinterTest('bib', 'bibclean')
+
+ let g:ale_ruby_rubocop_executable = 'bibclean'
+ let g:ale_ruby_rubocop_options = ''
+
+After:
+ call ale#assert#TearDownLinterTest()
+
+Execute(Executable should default to bibclean):
+ AssertLinter 'bibclean', ale#Escape('bibclean')
+ \ . ' -file-position '
+
+Execute(Should be able to set a custom executable):
+ let g:ale_bib_bibclean_executable = 'bin/bibclean'
+
+ AssertLinter 'bin/bibclean' , ale#Escape('bin/bibclean')
+ \ . ' -file-position '
+
+Execute(Should not include custom options):
+ let g:ale_bib_bibclean_options = '-no-prettryprint'
+
+ AssertLinter 'bibclean' , ale#Escape('bibclean')
+ \ . ' -file-position '
diff --git a/test/command_callback/test_javalsp_command_callback.vader b/test/command_callback/test_javalsp_command_callback.vader
index 1fbfddfb..aedb4a4b 100644
--- a/test/command_callback/test_javalsp_command_callback.vader
+++ b/test/command_callback/test_javalsp_command_callback.vader
@@ -6,5 +6,9 @@ After:
call ale#assert#TearDownLinterTest()
Execute(The javalsp callback should return the correct default value):
- AssertLinter 'java', ale#Escape('java -cp javacs.jar -Xverify:none org.javacs.Main')
+ AssertLinter 'java', ale#Escape('java') . ' -cp javacs.jar -Xverify:none org.javacs.Main'
+Execute(The javalsp java executable should be configurable):
+ let b:ale_java_javalsp_executable = '/bin/foobar'
+
+ AssertLinter '/bin/foobar', ale#Escape('/bin/foobar') . ' -cp javacs.jar -Xverify:none org.javacs.Main'
diff --git a/test/command_callback/test_pydocstyle_command_callback.vader b/test/command_callback/test_pydocstyle_command_callback.vader
new file mode 100644
index 00000000..7e0df9ca
--- /dev/null
+++ b/test/command_callback/test_pydocstyle_command_callback.vader
@@ -0,0 +1,39 @@
+Before:
+ call ale#assert#SetUpLinterTest('python', 'pydocstyle')
+
+After:
+ call ale#assert#TearDownLinterTest()
+
+Execute(The pydocstyle command callback should return default string):
+ AssertLinter 'pydocstyle',
+ \ ale#path#BufferCdString(bufnr(''))
+ \ . ale#Escape('pydocstyle') . ' ' . ale#Escape('dummy.txt')
+
+Execute(The pydocstyle command callback should allow options):
+ let g:ale_python_pydocstyle_options = '--verbose'
+
+ AssertLinter 'pydocstyle',
+ \ ale#path#BufferCdString(bufnr(''))
+ \ . ale#Escape('pydocstyle') . ' --verbose ' . ale#Escape('dummy.txt')
+
+Execute(The pydocstyle executable should be configurable):
+ let g:ale_python_pydocstyle_executable = '~/.local/bin/pydocstyle'
+
+ AssertLinter '~/.local/bin/pydocstyle',
+ \ ale#path#BufferCdString(bufnr(''))
+ \ . ale#Escape('~/.local/bin/pydocstyle') . ' ' . ale#Escape('dummy.txt')
+
+Execute(Setting executable to 'pipenv' appends 'run pydocstyle'):
+ let g:ale_python_pydocstyle_executable = 'path/to/pipenv'
+
+ AssertLinter 'path/to/pipenv',
+ \ ale#path#BufferCdString(bufnr(''))
+ \ . ale#Escape('path/to/pipenv') . ' run pydocstyle ' . ale#Escape('dummy.txt')
+
+Execute(Pipenv is detected when python_pydocstyle_auto_pipenv is set):
+ let g:ale_python_pydocstyle_auto_pipenv = 1
+ call ale#test#SetFilename('/testplugin/test/python_fixtures/pipenv/whatever.py')
+
+ AssertLinter 'pipenv',
+ \ ale#path#BufferCdString(bufnr(''))
+ \ . ale#Escape('pipenv') . ' run pydocstyle ' . ale#Escape('whatever.py')
diff --git a/test/command_callback/test_sass_sasslint_command_callback.vader b/test/command_callback/test_sass_sasslint_command_callback.vader
new file mode 100644
index 00000000..9b9bf906
--- /dev/null
+++ b/test/command_callback/test_sass_sasslint_command_callback.vader
@@ -0,0 +1,43 @@
+Before:
+ call ale#assert#SetUpLinterTest('sass', 'sasslint')
+ call ale#test#SetFilename('test.sass')
+ 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.sass')
+
+ 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.sass')
+
+ 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_sass_sasslint_executable = 'foo'
+
+ AssertLinter 'foo', ale#Escape('foo') . ' -v -q -f compact %t'
+
+Execute(The options should be configurable):
+ let b:ale_sass_sasslint_options = '--bar'
+
+ AssertLinter 'sass-lint', ale#Escape('sass-lint') . ' --bar -v -q -f compact %t'
diff --git a/test/command_callback/test_sasslint_command_callback.vader b/test/command_callback/test_sasslint_command_callback.vader
deleted file mode 100644
index 9142c441..00000000
--- a/test/command_callback/test_sasslint_command_callback.vader
+++ /dev/null
@@ -1,11 +0,0 @@
-Before:
- call ale#assert#SetUpLinterTest('sass', 'sasslint')
- call ale#test#SetFilename('test.sass')
-
-After:
- call ale#assert#TearDownLinterTest()
-
-Execute(The default sasslint command should be correct):
- AssertLinter 'sass-lint',
- \ ale#path#CdString(expand('%:p:h'))
- \ . ale#Escape('sass-lint') . ' -v -q -f compact %t'
diff --git a/test/command_callback/test_scalac_command_callback.vader b/test/command_callback/test_scalac_command_callback.vader
index 5184aa0b..ea5ae109 100644
--- a/test/command_callback/test_scalac_command_callback.vader
+++ b/test/command_callback/test_scalac_command_callback.vader
@@ -6,7 +6,7 @@ After:
Given scala(An empty Scala file):
Execute(The default executable and command should be correct):
- AssertLinter 'scalac', ale#Escape('scalac') . ' -Ystop-before:jvm %t'
+ AssertLinter 'scalac', ale#Escape('scalac') . ' -Ystop-after:parser %t'
Given scala.sbt(An empty SBT file):
Execute(scalac should not be run for sbt files):
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'