diff options
author | w0rp <devw0rp@gmail.com> | 2021-06-19 10:34:57 +0100 |
---|---|---|
committer | w0rp <devw0rp@gmail.com> | 2021-06-19 10:34:57 +0100 |
commit | 84a4a76aafaefe125df785ebac2e4858ec54debb (patch) | |
tree | 91797d6d9509a2439948ed6e60174a8f94ffb6ce /test | |
parent | 1b08791228f5aca4545a3fba6699b29a003028fe (diff) | |
download | ale-84a4a76aafaefe125df785ebac2e4858ec54debb.zip |
Close #3770 - Add support for checking circleci configs
Diffstat (limited to 'test')
-rw-r--r-- | test/handler/test_circleci_handler.vader | 39 | ||||
-rw-r--r-- | test/linter/test_circleci.vader | 13 | ||||
-rw-r--r-- | test/test-files/.circleci/config.yml | 0 |
3 files changed, 52 insertions, 0 deletions
diff --git a/test/handler/test_circleci_handler.vader b/test/handler/test_circleci_handler.vader new file mode 100644 index 00000000..8ffba360 --- /dev/null +++ b/test/handler/test_circleci_handler.vader @@ -0,0 +1,39 @@ +Before: + runtime ale_linters/yaml/circleci.vim + +After: + call ale#linter#Reset() + +Execute(The circlei handler should return nothing when configs are valid): + AssertEqual + \ [], + \ ale_linters#yaml#circleci#Handle(0, [ + \ 'Config input is valid.', + \ ]) + +Execute(The circlei handler put errors at the top when something is wrong): + AssertEqual + \ [ + \ { + \ 'lnum': 1, + \ 'type': 'E', + \ 'text': '[#/jobs] expected type: Mapping, found: Integer', + \ 'detail': join([ + \ '[#/jobs] expected type: Mapping, found: Integer', + \ 'Jobs is a map', + \ 'SCHEMA:', + \ ' type: object', + \ 'INPUT:', + \ ' 4', + \ ], "\n"), + \ }, + \ ], + \ ale_linters#yaml#circleci#Handle(0, [ + \ 'Error: ERROR IN CONFIG FILE:', + \ '[#/jobs] expected type: Mapping, found: Integer', + \ 'Jobs is a map', + \ 'SCHEMA:', + \ ' type: object', + \ 'INPUT:', + \ ' 4', + \ ]) diff --git a/test/linter/test_circleci.vader b/test/linter/test_circleci.vader new file mode 100644 index 00000000..f63cc513 --- /dev/null +++ b/test/linter/test_circleci.vader @@ -0,0 +1,13 @@ +Before: + call ale#assert#SetUpLinterTest('yaml', 'circleci') + +After: + call ale#assert#TearDownLinterTest() + +Execute(The linter should not run for every YAML file): + AssertLinterNotExecuted + +Execute(The linter should for YAML files in a .circleci directory): + call ale#test#SetFilename('../test-files/.circleci/config.yml') + + AssertLinter 'circleci', 'circleci config validate - < %s' diff --git a/test/test-files/.circleci/config.yml b/test/test-files/.circleci/config.yml new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/test/test-files/.circleci/config.yml |