summaryrefslogtreecommitdiff
path: root/test/linter/test_reek.vader
diff options
context:
space:
mode:
Diffstat (limited to 'test/linter/test_reek.vader')
-rw-r--r--test/linter/test_reek.vader49
1 files changed, 49 insertions, 0 deletions
diff --git a/test/linter/test_reek.vader b/test/linter/test_reek.vader
new file mode 100644
index 00000000..798c3314
--- /dev/null
+++ b/test/linter/test_reek.vader
@@ -0,0 +1,49 @@
+Before:
+ call ale#assert#SetUpLinterTest('ruby', 'reek')
+
+After:
+ call ale#assert#TearDownLinterTest()
+
+Execute(The reek callbacks should return the correct default values):
+ GivenCommandOutput ['reek 5.0.0']
+ AssertLinter 'reek', [
+ \ ale#Escape('reek') . ' --version',
+ \ ale#Escape('reek') . ' -f json --no-progress --no-color --force-exclusion --stdin-filename %s',
+ \]
+
+ " Try with older versions.
+ call ale#semver#ResetVersionCache()
+
+ GivenCommandOutput ['reek 4.8.2']
+ AssertLinter 'reek', [
+ \ ale#Escape('reek') . ' --version',
+ \ ale#Escape('reek') . ' -f json --no-progress --no-color --force-exclusion',
+ \]
+
+Execute(Setting bundle appends 'exec reek'):
+ let g:ale_ruby_reek_executable = 'bundle'
+
+ GivenCommandOutput ['reek 5.0.0']
+ AssertLinter 'bundle', ale#Escape('bundle')
+ \ . ' exec reek'
+ \ . ' -f json --no-progress --no-color --force-exclusion --stdin-filename %s',
+
+ " Try with older versions.
+ call ale#semver#ResetVersionCache()
+
+ GivenCommandOutput ['reek 4.8.2']
+ AssertLinter 'bundle', ale#Escape('bundle')
+ \ . ' exec reek'
+ \ . ' -f json --no-progress --no-color --force-exclusion'
+
+Execute(The reek version check should be cached):
+ GivenCommandOutput ['reek 5.0.0']
+ AssertLinter 'reek', [
+ \ ale#Escape('reek') . ' --version',
+ \ ale#Escape('reek') . ' -f json --no-progress --no-color --force-exclusion --stdin-filename %s',
+ \]
+
+ GivenCommandOutput []
+ AssertLinter 'reek', [
+ \ ale#Escape('reek') . ' -f json --no-progress --no-color --force-exclusion --stdin-filename %s',
+ \]