summaryrefslogtreecommitdiff
path: root/test/test_shell_detection.vader
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_shell_detection.vader')
-rw-r--r--test/test_shell_detection.vader20
1 files changed, 20 insertions, 0 deletions
diff --git a/test/test_shell_detection.vader b/test/test_shell_detection.vader
index 37cf43ce..adb8d70d 100644
--- a/test/test_shell_detection.vader
+++ b/test/test_shell_detection.vader
@@ -81,3 +81,23 @@ Execute(The ksh dialect should be used for shellcheck if b:is_kornshell is 1):
let b:is_kornshell = 1
AssertEqual 'ksh', ale_linters#sh#shellcheck#GetDialectArgument(bufnr(''))
+
+Given(A file with /bin/ash):
+ #!/bin/ash
+
+Execute(The ash dialect should be used for the shell and the base function):
+ AssertEqual 'ash', ale#handlers#sh#GetShellType(bufnr(''))
+ AssertEqual 'ash', ale_linters#sh#shell#GetExecutable(bufnr(''))
+
+Execute(dash should be used for shellcheck, which has no ash dialect):
+ AssertEqual 'dash', ale_linters#sh#shellcheck#GetDialectArgument(bufnr(''))
+
+Given(A file with /bin/dash):
+ #!/bin/dash
+
+Execute(The dash dialect should be used for the shell and the base function):
+ AssertEqual 'dash', ale#handlers#sh#GetShellType(bufnr(''))
+ AssertEqual 'dash', ale_linters#sh#shell#GetExecutable(bufnr(''))
+
+Execute(dash should be used for shellcheck):
+ AssertEqual 'dash', ale_linters#sh#shellcheck#GetDialectArgument(bufnr(''))