diff options
-rw-r--r-- | src/nvim/testdir/Makefile | 1 | ||||
-rw-r--r-- | src/nvim/testdir/test_fixeol.in | 40 | ||||
-rw-r--r-- | src/nvim/testdir/test_fixeol.ok | 10 | ||||
-rw-r--r-- | test/functional/legacy/fixeol_spec.lua | 59 |
4 files changed, 59 insertions, 51 deletions
diff --git a/src/nvim/testdir/Makefile b/src/nvim/testdir/Makefile index 3e597eb1af..8c3e99c624 100644 --- a/src/nvim/testdir/Makefile +++ b/src/nvim/testdir/Makefile @@ -29,7 +29,6 @@ SCRIPTS := test_eval.out \ test_charsearch.out \ test_close_count.out \ test_command_count.out \ - test_fixeol.out \ SCRIPTS_GUI := test16.out diff --git a/src/nvim/testdir/test_fixeol.in b/src/nvim/testdir/test_fixeol.in deleted file mode 100644 index a881fb1b80..0000000000 --- a/src/nvim/testdir/test_fixeol.in +++ /dev/null @@ -1,40 +0,0 @@ -Tests for 'fixeol' vim: set ft=vim : - -STARTTEST -:" first write two test files – with and without trailing EOL -:" use Unix fileformat for consistency -:set ff=unix -:enew! -awith eol:w! XXEol -:enew! -:set noeol nofixeol -awithout eol:w! XXNoEol -:set eol fixeol -:bwipe XXEol XXNoEol -:" -:" try editing files with 'fixeol' disabled -:e! XXEol -ostays eol:set nofixeol -:w! XXTestEol -:e! XXNoEol -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. -ggdGaEND:w >>XXEol -:w >>XXNoEol -:w >>XXTestEol -:w >>XXTestNoEol -:" -:" Concatenate the results -:e! test.out -a0:$r XXEol -:$r XXNoEol -Go1:$r XXTestEol -:$r XXTestNoEol -:w -:qa! -ENDTEST - diff --git a/src/nvim/testdir/test_fixeol.ok b/src/nvim/testdir/test_fixeol.ok deleted file mode 100644 index 68ac9be168..0000000000 --- a/src/nvim/testdir/test_fixeol.ok +++ /dev/null @@ -1,10 +0,0 @@ -0 -with eol -END -without eolEND -1 -with eol -stays eol -END -without eol -stays withoutEND diff --git a/test/functional/legacy/fixeol_spec.lua b/test/functional/legacy/fixeol_spec.lua new file mode 100644 index 0000000000..113d14f6ca --- /dev/null +++ b/test/functional/legacy/fixeol_spec.lua @@ -0,0 +1,59 @@ +-- Tests for 'fixeol' + +local helpers = require('test.functional.helpers') +local feed, insert, source = helpers.feed, helpers.insert, helpers.source +local clear, execute, expect = helpers.clear, helpers.execute, helpers.expect + +describe('fixeol', function() + setup(clear) + + it('is working', function() + -- First write two test files – with and without trailing EOL. + -- Use Unix fileformat for consistency. + execute('set ff=unix') + execute('enew!') + feed('awith eol<esc>:w! XXEol<cr>') + execute('enew!') + execute('set noeol nofixeol') + feed('awithout eol<esc>:w! XXNoEol<cr>') + execute('set eol fixeol') + execute('bwipe XXEol XXNoEol') + + -- Try editing files with 'fixeol' disabled. + execute('e! XXEol') + feed('ostays eol<esc>:set nofixeol<cr>') + execute('w! XXTestEol') + execute('e! XXNoEol') + feed('ostays without<esc>:set nofixeol<cr>') + execute('w! XXTestNoEol') + execute('bwipe XXEol XXNoEol XXTestEol XXTestNoEol') + execute('set fixeol') + + -- Append "END" to each file so that we can see what the last written char was. + feed('ggdGaEND<esc>:w >>XXEol<cr>') + execute('w >>XXNoEol') + execute('w >>XXTestEol') + execute('w >>XXTestNoEol') + + -- Concatenate the results. + execute('e! test.out') + feed('a0<esc>:$r XXEol<cr>') + execute('$r XXNoEol') + feed('Go1<esc>:$r XXTestEol<cr>') + execute('$r XXTestNoEol') + execute('w') + + -- Assert buffer contents. + expect([=[ + 0 + with eol + END + without eolEND + 1 + with eol + stays eol + END + without eol + stays withoutEND]=]) + end) +end) |