diff options
-rw-r--r-- | src/nvim/testdir/Makefile | 1 | ||||
-rw-r--r-- | src/nvim/testdir/test_textobjects.in | 40 | ||||
-rw-r--r-- | src/nvim/testdir/test_textobjects.ok | 16 | ||||
-rw-r--r-- | test/functional/legacy/textobjects_spec.lua | 61 |
4 files changed, 61 insertions, 57 deletions
diff --git a/src/nvim/testdir/Makefile b/src/nvim/testdir/Makefile index dfd83fb27d..fe511166f2 100644 --- a/src/nvim/testdir/Makefile +++ b/src/nvim/testdir/Makefile @@ -29,7 +29,6 @@ SCRIPTS := \ test_close_count.out \ test_command_count.out \ test_marks.out \ - test_textobjects.out \ NEW_TESTS = diff --git a/src/nvim/testdir/test_textobjects.in b/src/nvim/testdir/test_textobjects.in deleted file mode 100644 index dc48efc67a..0000000000 --- a/src/nvim/testdir/test_textobjects.in +++ /dev/null @@ -1,40 +0,0 @@ -Tests for text-objects vim: set ft=vim : - -STARTTEST -:so small.vim -:if !has('textobjects') | e! test.ok | wq! test.out | endif -:set nocp viminfo+=nviminfo -:" -:function SelectionOut(data) -: new -: call setline(1, a:data) -: call setreg('"', '') -: normal! ggfrmavi)y -: $put =getreg('\"') -: call setreg('"', '') -: normal! `afbmavi)y -: $put =getreg('\"') -: call setreg('"', '') -: normal! `afgmavi)y -: $put =getreg('\"') -: %yank a -: q! -: $put =getreg('a') -:endfunction -:" -:$put ='# Test for vi) without cpo-M' -:set cpo-=M -:call SelectionOut('(red \(blue) green)') -:" -:$put ='# Test for vi) with cpo-M #1' -:set cpo+=M -:call SelectionOut('(red \(blue) green)') -:" -:$put ='# Test for vi) with cpo-M #2' -:set cpo+=M -:call SelectionOut('(red (blue\) green)') -:/^Results/,$w test.out -:qa! -ENDTEST - -Results of text-objects diff --git a/src/nvim/testdir/test_textobjects.ok b/src/nvim/testdir/test_textobjects.ok deleted file mode 100644 index b670c7d816..0000000000 --- a/src/nvim/testdir/test_textobjects.ok +++ /dev/null @@ -1,16 +0,0 @@ -Results of text-objects -# Test for vi) without cpo-M -(red \(blue) green) -red \(blue -red \(blue - -# Test for vi) with cpo-M #1 -(red \(blue) green) -red \(blue) green -blue -red \(blue) green -# Test for vi) with cpo-M #2 -(red (blue\) green) -red (blue\) green -blue\ -red (blue\) green diff --git a/test/functional/legacy/textobjects_spec.lua b/test/functional/legacy/textobjects_spec.lua new file mode 100644 index 0000000000..1e8e0b0bcb --- /dev/null +++ b/test/functional/legacy/textobjects_spec.lua @@ -0,0 +1,61 @@ +local helpers = require('test.functional.helpers') +local call = helpers.call +local clear = helpers.clear +local execute = helpers.execute +local expect = helpers.expect +local source = helpers.source + +describe('Text object', function() + before_each(function() + clear() + execute('set shada=') + source([[ + function SelectionOut(data) + new + call setline(1, a:data) + call setreg('"', '') + normal! ggfrmavi)y + $put =getreg('\"') + call setreg('"', '') + normal! `afbmavi)y + $put =getreg('\"') + call setreg('"', '') + normal! `afgmavi)y + $put =getreg('\"') + endfunction + ]]) + end) + + it('Test for vi) without cpo-M', function() + execute('set cpo-=M') + call('SelectionOut', '(red \\(blue) green)') + + expect([[ + (red \(blue) green) + red \(blue + red \(blue + ]]) + end) + + it('Test for vi) with cpo-M #1', function() + execute('set cpo+=M') + call('SelectionOut', '(red \\(blue) green)') + + expect([[ + (red \(blue) green) + red \(blue) green + blue + red \(blue) green]]) + end) + + it('Test for vi) with cpo-M #2', function() + execute('set cpo+=M') + call('SelectionOut', '(red (blue\\) green)') + + expect([[ + (red (blue\) green) + red (blue\) green + blue\ + red (blue\) green]]) + end) +end) |