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)  | 
