summaryrefslogtreecommitdiff
path: root/test/linter/test_packwerk.vader
diff options
context:
space:
mode:
Diffstat (limited to 'test/linter/test_packwerk.vader')
-rw-r--r--test/linter/test_packwerk.vader38
1 files changed, 38 insertions, 0 deletions
diff --git a/test/linter/test_packwerk.vader b/test/linter/test_packwerk.vader
new file mode 100644
index 00000000..9a91fd9e
--- /dev/null
+++ b/test/linter/test_packwerk.vader
@@ -0,0 +1,38 @@
+Before:
+ call ale#assert#SetUpLinterTest('ruby', 'packwerk')
+ call ale#test#SetFilename('../test-files/ruby/valid_rails_app/db/test.rb')
+
+ let g:ale_ruby_packwerk_executable = 'packwerk'
+ let g:ale_ruby_packwerk_options = ''
+
+ let b:sep = has('win32') ? '\' : '/'
+
+After:
+ unlet! b:sep
+
+ call ale#assert#TearDownLinterTest()
+
+Execute(Executable should default to packwerk):
+ AssertLinter 'packwerk', ale#Escape('packwerk')
+ \ . ' check '
+ \ . ale#Escape('db' . b:sep . 'test.rb')
+
+Execute(Should be able to set a custom executable):
+ let g:ale_ruby_packwerk_executable = 'bin/packwerk'
+
+ AssertLinter 'bin/packwerk', ale#Escape('bin/packwerk')
+ \ . ' check '
+ \ . ale#Escape('db' . b:sep . 'test.rb')
+
+Execute(Setting bundle appends 'exec packwerk'):
+ let g:ale_ruby_packwerk_executable = 'path to/bundle'
+
+ AssertLinter 'path to/bundle', ale#Escape('path to/bundle')
+ \ . ' exec packwerk'
+ \ . ' check '
+ \ . ale#Escape('db' . b:sep . 'test.rb')
+
+Execute(Command callback should be empty when not in a valid Rails app):
+ call ale#test#SetFilename('../test-files/ruby/not_a_rails_app/test.rb')
+
+ AssertLinter 'packwerk', ''