summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorw0rp <devw0rp@gmail.com>2017-08-21 18:42:18 +0100
committerw0rp <devw0rp@gmail.com>2017-08-21 18:42:18 +0100
commita3299bf03a405207347d8d06c28b65af1e0a5092 (patch)
tree67f072993f1e549589797d64a4b4974cc0002044 /test
parentcc02eb8a5a0e40e23ae5e3cc2a4e92f0353d30b5 (diff)
downloadale-a3299bf03a405207347d8d06c28b65af1e0a5092.zip
Fix #864 - Use the user's configured executable for phpstan for executable() checks
Diffstat (limited to 'test')
-rw-r--r--test/command_callback/test_phpstan_command_callbacks.vader29
-rw-r--r--test/handler/test_phpstan_handler.vader (renamed from test/test_phpstan_executable_detection.vader)44
2 files changed, 33 insertions, 40 deletions
diff --git a/test/command_callback/test_phpstan_command_callbacks.vader b/test/command_callback/test_phpstan_command_callbacks.vader
new file mode 100644
index 00000000..7366df8b
--- /dev/null
+++ b/test/command_callback/test_phpstan_command_callbacks.vader
@@ -0,0 +1,29 @@
+Before:
+ Save g:ale_php_phpstan_executable
+ Save g:ale_php_phpstan_level
+
+ unlet! g:ale_php_phpstan_executable
+ unlet! g:ale_php_phpstan_level
+
+ runtime ale_linters/php/phpstan.vim
+
+After:
+ Restore
+
+ call ale#linter#Reset()
+
+Execute(Custom executables should be used for the executable and command):
+ let g:ale_php_phpstan_executable = 'phpstan_test'
+
+ AssertEqual 'phpstan_test', ale_linters#php#phpstan#GetExecutable(bufnr(''))
+ AssertEqual
+ \ ale#Escape('phpstan_test') . ' analyze -l4 --errorFormat raw %s',
+ \ ale_linters#php#phpstan#GetCommand(bufnr(''))
+
+Execute(project with level set to 3):
+ call ale#test#SetFilename('phpstan-test-files/foo/test.php')
+ let g:ale_php_phpstan_level = 3
+
+ AssertEqual
+ \ ale#Escape('phpstan') . ' analyze -l3 --errorFormat raw %s',
+ \ ale_linters#php#phpstan#GetCommand(bufnr(''))
diff --git a/test/test_phpstan_executable_detection.vader b/test/handler/test_phpstan_handler.vader
index 24ba8cd8..207a7758 100644
--- a/test/test_phpstan_executable_detection.vader
+++ b/test/handler/test_phpstan_handler.vader
@@ -1,9 +1,4 @@
Before:
- Save g:ale_php_phpstan_executable
- Save g:ale_php_phpstan_level
-
- let g:ale_php_phpstan_executable = 'phpstan_test'
-
call ale#test#SetDirectory('/testplugin/test')
runtime ale_linters/php/phpstan.vim
@@ -14,45 +9,14 @@ After:
call ale#test#RestoreDirectory()
call ale#linter#Reset()
-Execute(project with level set to 3):
- call ale#test#SetFilename('phpstan-test-files/foo/test.php')
- let g:ale_php_phpstan_level = 3
-
- AssertEqual
- \ 'phpstan_test analyze -l3 --errorFormat raw %s',
- \ ale_linters#php#phpstan#GetCommand(bufnr(''))
-
-Execute(project with default level):
- call ale#test#SetFilename('phpstan-test-files/foo/test.php')
-
- AssertEqual
- \ 'phpstan_test analyze -l4 --errorFormat raw %s',
- \ ale_linters#php#phpstan#GetCommand(bufnr(''))
-
-Execute(parse output without errors):
+Execute(Output without errors should be parsed correctly):
call ale#test#SetFilename('phpstan-test-files/foo/test.php')
AssertEqual
\ [],
\ ale_linters#php#phpstan#Handle(bufnr(''), [" 1/1 [▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓] 100%"])
-Execute(parse output with one error):
- call ale#test#SetFilename('phpstan-test-files/foo/test.php')
-
- AssertEqual
- \ [
- \ {
- \ 'lnum': 9,
- \ 'text': 'Access to an undefined property Test::$var.',
- \ 'type': 'W'
- \ }
- \ ],
- \ ale_linters#php#phpstan#Handle(bufnr(''), [
- \ ' 1/1 [▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓] 100%',
- \ 'phpstan-test-files/foo/test.php:9:Access to an undefined property Test::$var.',
- \])
-
-Execute(parse output with three errors):
+Execute(Output with some errors should be parsed correctly):
call ale#test#SetFilename('phpstan-test-files/foo/test.php')
AssertEqual
@@ -80,7 +44,7 @@ Execute(parse output with three errors):
\ 'phpstan-test-files/foo/test.php:192:Invalid command testCommand.',
\])
-Execute(parse output for windows filesystem):
+Execute(Output should be parsed correctly with Windows paths):
call ale#test#SetFilename('phpstan-test-files/foo/test.php')
AssertEqual
@@ -96,7 +60,7 @@ Execute(parse output for windows filesystem):
\ 'D:\phpstan-test-files\foo\test.php:9:Access to an undefined property Test::$var.',
\])
-Execute(parse output for not php file):
+Execute(Output for .inc files should be parsed correctly):
call ale#test#SetFilename('phpstan-test-files/test.inc')
AssertEqual