summaryrefslogtreecommitdiff
path: root/test/test_dockerfile_hadolint_linter.vader
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_dockerfile_hadolint_linter.vader')
-rw-r--r--test/test_dockerfile_hadolint_linter.vader69
1 files changed, 69 insertions, 0 deletions
diff --git a/test/test_dockerfile_hadolint_linter.vader b/test/test_dockerfile_hadolint_linter.vader
new file mode 100644
index 00000000..7262c5b0
--- /dev/null
+++ b/test/test_dockerfile_hadolint_linter.vader
@@ -0,0 +1,69 @@
+" NOTE: We use the 'b:' forms below to ensure that we're properly using
+" ale#Var()
+
+Given dockerfile:
+ #
+
+Before:
+ Save g:ale_dockerfile_hadolint_use_docker
+ Save g:ale_dockerfile_hadolint_docker_image
+ silent! unlet g:ale_dockerfile_hadolint_use_docker
+ silent! unlet g:ale_dockerfile_hadolint_docker_image
+
+ " enable loading inside test container
+ silent! cd /testplugin
+ source ale_linters/dockerfile/hadolint.vim
+
+
+After:
+ Restore
+ silent! unlet b:ale_dockerfile_hadolint_use_docker
+ silent! unlet b:ale_dockerfile_hadolint_docker_image
+
+
+Execute(linter honors ..._use_docker correctly):
+
+ " default: never
+ AssertEqual
+ \ 'hadolint',
+ \ ale_linters#dockerfile#hadolint#GetExecutable(bufnr(''))
+
+ " explicit never
+ let b:ale_dockerfile_hadolint_use_docker = 'never'
+ AssertEqual
+ \ 'hadolint',
+ \ ale_linters#dockerfile#hadolint#GetExecutable(bufnr(''))
+
+ let b:ale_dockerfile_hadolint_use_docker = 'always'
+ AssertEqual
+ \ 'docker',
+ \ ale_linters#dockerfile#hadolint#GetExecutable(bufnr(''))
+
+ " hadolint if present, otherwise docker
+ let command = 'docker'
+ if executable('hadolint')
+ let command = 'hadolint'
+ endif
+
+ let b:ale_dockerfile_hadolint_use_docker = 'yes'
+ AssertEqual
+ \ command,
+ \ ale_linters#dockerfile#hadolint#GetExecutable(bufnr(''))
+
+
+Execute(command is correct when using docker):
+ let b:ale_dockerfile_hadolint_use_docker = 'always'
+
+ AssertEqual
+ \ "docker run --rm -i lukasmartinelli/hadolint",
+ \ ale_linters#dockerfile#hadolint#GetCommand(bufnr(''))
+
+
+Execute(command is correct when not docker):
+ let b:ale_dockerfile_hadolint_use_docker = 'never'
+
+ AssertEqual
+ \ "hadolint -",
+ \ ale_linters#dockerfile#hadolint#GetCommand(bufnr(''))
+
+" fin...