summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/fix/test_ale_fix.vader48
-rw-r--r--test/test_no_linting_on_write_quit.vader4
2 files changed, 50 insertions, 2 deletions
diff --git a/test/fix/test_ale_fix.vader b/test/fix/test_ale_fix.vader
index 9e5ad027..05cc4457 100644
--- a/test/fix/test_ale_fix.vader
+++ b/test/fix/test_ale_fix.vader
@@ -8,6 +8,7 @@ Before:
silent! cd /testplugin/test/fix
+ unlet! b:ale_lint_on_save
let g:ale_enabled = 0
let g:ale_echo_cursor = 0
let g:ale_run_synchronously = 1
@@ -191,6 +192,7 @@ After:
unlet! g:ale_run_synchronously_callbacks
unlet! g:ale_emulate_job_failure
unlet! b:ale_fixers
+ unlet! b:ale_lint_on_save
unlet! b:ale_fix_on_save
unlet! b:ale_quitting
delfunction AddCarets
@@ -631,6 +633,52 @@ Expect(The buffer should be the same):
b
c
+Execute(ALEFix should not lint the buffer on save if linting on save is disabled globally):
+ let g:ale_fix_on_save = 1
+ let g:ale_lint_on_save = 0
+ let g:ale_enabled = 1
+
+ let g:test_filename = tempname()
+ execute 'noautocmd silent file ' . fnameescape(g:test_filename)
+
+ let g:ale_fixers.testft = ['DoNothing']
+
+ call SetUpLinters()
+ call ale#events#SaveEvent(bufnr(''))
+ call ale#test#FlushJobs()
+
+ Assert !filereadable(g:test_filename), 'The file should not have been saved'
+
+ AssertEqual [], ale#test#GetLoclistWithoutModule()
+
+Expect(The buffer should be the same):
+ a
+ b
+ c
+
+Execute(ALEFix should not lint the buffer on save if linting on save is disabled locally):
+ let g:ale_fix_on_save = 1
+ let b:ale_lint_on_save = 0
+ let g:ale_enabled = 1
+
+ let g:test_filename = tempname()
+ execute 'noautocmd silent file ' . fnameescape(g:test_filename)
+
+ let g:ale_fixers.testft = ['DoNothing']
+
+ call SetUpLinters()
+ call ale#events#SaveEvent(bufnr(''))
+ call ale#test#FlushJobs()
+
+ Assert !filereadable(g:test_filename), 'The file should not have been saved'
+
+ AssertEqual [], ale#test#GetLoclistWithoutModule()
+
+Expect(The buffer should be the same):
+ a
+ b
+ c
+
Given testft (A file with three lines):
a
b
diff --git a/test/test_no_linting_on_write_quit.vader b/test/test_no_linting_on_write_quit.vader
index bbd80d8f..3e49b506 100644
--- a/test/test_no_linting_on_write_quit.vader
+++ b/test/test_no_linting_on_write_quit.vader
@@ -86,7 +86,7 @@ Execute(No linting should be for :w after :q fails):
AssertEqual 1, len(ale#test#GetLoclistWithoutModule())
Execute(No linting should be done on :wq or :x after fixing files):
- let g:ale_lint_on_save = 0
+ let g:ale_lint_on_save = 1
let g:ale_fix_on_save = 1
call ale#events#SaveEvent(bufnr(''))
@@ -103,7 +103,7 @@ Execute(No linting should be done on :wq or :x after fixing files):
AssertEqual [], ale#test#GetLoclistWithoutModule()
Execute(Linting should be done after :q fails and fixing files):
- let g:ale_lint_on_save = 0
+ let g:ale_lint_on_save = 1
let g:ale_fix_on_save = 1
call ale#events#QuitEvent(bufnr(''))