summaryrefslogtreecommitdiff
path: root/test/test_writefile_function.vader
diff options
context:
space:
mode:
authorJames C. Davis <jamescdavis@gmail.com>2020-04-30 03:43:17 -0400
committerJames C. Davis <jamescdavis@gmail.com>2020-04-30 15:00:10 -0400
commit15d590ee5e6779b6dad2640cdb55abc9d357bbe9 (patch)
treec669b9607d6419a7e8437955806326b36f0b8bb1 /test/test_writefile_function.vader
parent36e5337e30095afb10d02ef2ae362c8d6055e70d (diff)
downloadale-15d590ee5e6779b6dad2640cdb55abc9d357bbe9.zip
fix: don't append newline when buffer is noeol and nofixeol
Diffstat (limited to 'test/test_writefile_function.vader')
-rw-r--r--test/test_writefile_function.vader46
1 files changed, 46 insertions, 0 deletions
diff --git a/test/test_writefile_function.vader b/test/test_writefile_function.vader
index 811d59e8..53a88331 100644
--- a/test/test_writefile_function.vader
+++ b/test/test_writefile_function.vader
@@ -69,3 +69,49 @@ Execute(Unix file lines should be written as normal):
AssertEqual
\ ['first', 'second', 'third', ''],
\ readfile(g:new_line_test_file, 'b')
+
+Execute(Newline at end of file should be preserved even when nofixeol):
+ call ale#test#SetFilename(g:new_line_test_file)
+
+ setlocal buftype=
+ noautocmd :w
+ noautocmd :e! ++ff=unix
+ set eol
+ set nofixeol
+
+ call ale#util#Writefile(bufnr(''), getline(1, '$'), g:new_line_test_file)
+
+ AssertEqual
+ \ ['first', 'second', 'third', ''],
+ \ readfile(g:new_line_test_file, 'b')
+
+Execute(Newline should not be appended on write when noeol and nofixeol):
+ call ale#test#SetFilename(g:new_line_test_file)
+
+ setlocal buftype=
+ noautocmd :w
+ noautocmd :e! ++ff=unix
+ set noeol
+ set nofixeol
+
+ call ale#util#Writefile(bufnr(''), getline(1, '$'), g:new_line_test_file)
+
+ AssertEqual
+ \ ['first', 'second', 'third'],
+ \ readfile(g:new_line_test_file, 'b')
+
+Execute(Newline should be appended on write when noeol and fixeol):
+ call ale#test#SetFilename(g:new_line_test_file)
+
+ setlocal buftype=
+ noautocmd :w
+ noautocmd :e! ++ff=unix
+ set noeol
+ set fixeol
+
+ call ale#util#Writefile(bufnr(''), getline(1, '$'), g:new_line_test_file)
+
+ AssertEqual
+ \ ['first', 'second', 'third', ''],
+ \ readfile(g:new_line_test_file, 'b')
+