summaryrefslogtreecommitdiff
path: root/src/testdir/test_fixeol.vim
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2017-11-16 21:52:51 +0100
committerBram Moolenaar <Bram@vim.org>2017-11-16 21:52:51 +0100
commit209d3874c19d73b209e7d223cf05ea22e183f408 (patch)
treee26d8336afd8f7dd305f0c750ee7895ab062e500 /src/testdir/test_fixeol.vim
parent7cb769a69f5b9d6951f4427c85e75f5b2909cf10 (diff)
downloadvim-git-209d3874c19d73b209e7d223cf05ea22e183f408.tar.gz
patch 8.0.1302: still too many old style testsv8.0.1302
Problem: Still too many old style tests. Solution: Convert a few more tests to new style. (Yegappan Lakshmanan, closes #2326)
Diffstat (limited to 'src/testdir/test_fixeol.vim')
-rw-r--r--src/testdir/test_fixeol.vim48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/testdir/test_fixeol.vim b/src/testdir/test_fixeol.vim
new file mode 100644
index 000000000..32cb059e2
--- /dev/null
+++ b/src/testdir/test_fixeol.vim
@@ -0,0 +1,48 @@
+" Tests for 'fixeol' and 'eol'
+func Test_fixeol()
+ " first write two test files – with and without trailing EOL
+ " use Unix fileformat for consistency
+ set ff=unix
+ enew!
+ call setline('.', 'with eol')
+ w! XXEol
+ enew!
+ set noeol nofixeol
+ call setline('.', 'without eol')
+ w! XXNoEol
+ set eol fixeol
+ bwipe XXEol XXNoEol
+
+ " try editing files with 'fixeol' disabled
+ e! XXEol
+ normal ostays eol
+ set nofixeol
+ w! XXTestEol
+ e! XXNoEol
+ normal ostays without
+ set nofixeol
+ w! XXTestNoEol
+ bwipe! XXEol XXNoEol XXTestEol XXTestNoEol
+ set fixeol
+
+ " Append "END" to each file so that we can see what the last written char
+ " was.
+ normal ggdGaEND
+ w >>XXEol
+ w >>XXNoEol
+ w >>XXTestEol
+ w >>XXTestNoEol
+
+ call assert_equal(['with eol', 'END'], readfile('XXEol'))
+ call assert_equal(['without eolEND'], readfile('XXNoEol'))
+ call assert_equal(['with eol', 'stays eol', 'END'], readfile('XXTestEol'))
+ call assert_equal(['without eol', 'stays withoutEND'],
+ \ readfile('XXTestNoEol'))
+
+ call delete('XXEol')
+ call delete('XXNoEol')
+ call delete('XXTestEol')
+ call delete('XXTestNoEol')
+ set ff& fixeol& eol&
+ enew!
+endfunc