Problem: Text object tests are old style.
Solution: Turn them into new style tests. (James McCoy, closes #941)
# Carbon GUI for Mac OS X
#CONF_OPT_GUI = --enable-gui=carbon
+# Uncomment this line to run an indivisual test with gvim.
+#GUI_TESTARG = GUI_FLAG=-g
+
# DARWIN - detecting Mac OS X
# Uncomment this line when you want to compile a Unix version of Vim on
# Darwin. None of the Mac specific options or files will be used.
test_search_mbyte \
test_signs \
test_tagcase \
- test_textobjects \
test_utf8 \
test_wordcount \
test_writefile \
test_syntax \
test_tabline \
test_tagjump \
+ test_textobjects \
test_timers \
test_true_false \
test_undolevels \
test_search_mbyte.out \
test_signs.out \
test_tagcase.out \
- test_textobjects.out \
test_utf8.out \
test_wordcount.out \
test_writefile.out
test_ruby.res \
test_stat.res \
test_syntax.res \
+ test_textobjects.res \
test_usercommands.res \
test_viminfo.res \
test_viml.res \
+++ /dev/null
-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
+++ /dev/null
-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
--- /dev/null
+" Test for textobjects
+
+if !has('textobjects')
+ finish
+endif
+
+function! CpoM(line, useM, expected)
+ new
+
+ if a:useM
+ set cpoptions+=M
+ else
+ set cpoptions-=M
+ endif
+
+ call setline(1, a:line)
+
+ call setreg('"', '')
+ normal! ggfrmavi)y
+ call assert_equal(getreg('"'), a:expected[0])
+
+ call setreg('"', '')
+ normal! `afbmavi)y
+ call assert_equal(getreg('"'), a:expected[1])
+
+ call setreg('"', '')
+ normal! `afgmavi)y
+ call assert_equal(getreg('"'), a:expected[2])
+
+ q!
+endfunction
+
+function! Test_inner_block_without_cpo_M()
+ call CpoM('(red \(blue) green)', 0, ['red \(blue', 'red \(blue', ''])
+endfunction
+
+function! Test_inner_block_with_cpo_M_left_backslash()
+ call CpoM('(red \(blue) green)', 1, ['red \(blue) green', 'blue', 'red \(blue) green'])
+endfunction
+
+function! Test_inner_block_with_cpo_M_right_backslash()
+ call CpoM('(red (blue\) green)', 1, ['red (blue\) green', 'blue\', 'red (blue\) green'])
+endfunction
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 2098,
/**/
2097,
/**/