Mercurial > vim
changeset 4274:015e53d99787 v7.3.887
updated for version 7.3.887
Problem: No tests for Visual mode operators, what 7.3.879 fixes.
Solution: Add a new test file. (David B?rgin)
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Fri, 12 Apr 2013 13:45:02 +0200 |
parents | 73bdb401d109 |
children | f0a7c439ba65 |
files | src/testdir/Make_amiga.mak src/testdir/Make_dos.mak src/testdir/Make_ming.mak src/testdir/Make_os2.mak src/testdir/Make_vms.mms src/testdir/Makefile src/testdir/test94.in src/testdir/test94.ok src/version.c |
diffstat | 9 files changed, 133 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/src/testdir/Make_amiga.mak +++ b/src/testdir/Make_amiga.mak @@ -32,7 +32,8 @@ SCRIPTS = test1.out test3.out test4.out test71.out test72.out test73.out test74.out test75.out \ test76.out test77.out test78.out test79.out test80.out \ test81.out test82.out test83.out test84.out test88.out \ - test89.out test90.out test91.out test92.out test93.out + test89.out test90.out test91.out test92.out test93.out \ + test94.out .SUFFIXES: .in .out @@ -142,3 +143,4 @@ test90.out: test90.in test91.out: test91.in test92.out: test92.in test93.out: test93.in +test94.out: test94.in
--- a/src/testdir/Make_dos.mak +++ b/src/testdir/Make_dos.mak @@ -31,7 +31,8 @@ SCRIPTS = test3.out test4.out test5.out test74.out test75.out test76.out test77.out test78.out \ test79.out test80.out test81.out test82.out test83.out \ test84.out test85.out test86.out test87.out test88.out \ - test89.out test90.out test91.out test92.out test93.out + test89.out test90.out test91.out test92.out test93.out \ + test94.out SCRIPTS32 = test50.out test70.out
--- a/src/testdir/Make_ming.mak +++ b/src/testdir/Make_ming.mak @@ -51,7 +51,8 @@ SCRIPTS = test3.out test4.out test5.out test74.out test75.out test76.out test77.out test78.out \ test79.out test80.out test81.out test82.out test83.out \ test84.out test85.out test86.out test87.out test88.out \ - test89.out test90.out test91.out test92.out test93.out + test89.out test90.out test91.out test92.out test93.out \ + test94.out SCRIPTS32 = test50.out test70.out
--- a/src/testdir/Make_os2.mak +++ b/src/testdir/Make_os2.mak @@ -32,7 +32,8 @@ SCRIPTS = test1.out test3.out test4.out test71.out test72.out test73.out test74.out test75.out \ test76.out test77.out test78.out test79.out test80.out \ test81.out test82.out test83.out test84.out test88.out \ - test89.out test90.out test91.out test92.out test93.out + test89.out test90.out test91.out test92.out test93.out \ + test94.out .SUFFIXES: .in .out
--- a/src/testdir/Make_vms.mms +++ b/src/testdir/Make_vms.mms @@ -4,7 +4,7 @@ # Authors: Zoltan Arpadffy, <arpadffy@polarhome.com> # Sandor Kopanyi, <sandor.kopanyi@mailbox.hu> # -# Last change: 2013-02-21 +# Last change: 2013 Apr 12 # # This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64. # Edit the lines in the Configuration section below to select. @@ -77,7 +77,7 @@ SCRIPT = test1.out test2.out test3.out test71.out test72.out test74.out test75.out test76.out \ test77.out test78.out test79.out test80.out test81.out \ test82.out test83.out test84.out test88.out test89.out \ - test90.out test91.out test92.out test93.out + test90.out test91.out test92.out test93.out test94.out # Known problems: # Test 30: a problem around mac format - unknown reason
--- a/src/testdir/Makefile +++ b/src/testdir/Makefile @@ -28,7 +28,8 @@ SCRIPTS = test1.out test2.out test3.out test74.out test75.out test76.out test77.out test78.out \ test79.out test80.out test81.out test82.out test83.out \ test84.out test85.out test86.out test87.out test88.out \ - test89.out test90.out test91.out test92.out test93.out + test89.out test90.out test91.out test92.out test93.out \ + test94.out SCRIPTS_GUI = test16.out
new file mode 100644 --- /dev/null +++ b/src/testdir/test94.in @@ -0,0 +1,98 @@ +Test for Visual mode and operators + +Tests for the two kinds of operations: Those executed with Visual mode +followed by an operator and those executed via Operator-pending mode. Also +part of the test are mappings, counts, and repetition with the . command. + +Test cases: +- Visual modes (v V CTRL-V) followed by an operator; count; repeating +- Visual mode maps; count; repeating + - Simple + - With an Ex command (custom text object) +- Operator-pending mode maps + - Simple + - With Ex command moving the cursor + - With Ex command and Visual selection (custom text object) +- Patch 7.3.879: Properly abort Ex command in Operator-pending mode + +STARTTEST +:so small.vim +:set nocp +: +:" User functions +:function MoveToCap() +: call search('\u', 'W') +:endfunction +:function SelectInCaps() +: let [line1, col1] = searchpos('\u', 'bcnW') +: let [line2, col2] = searchpos('.\u', 'nW') +: call setpos("'<", [0, line1, col1, 0]) +: call setpos("'>", [0, line2, col2, 0]) +: normal! gv +:endfunction +:function MoveToEndCount(count) +: normal! v:count . e +:endfunction +: +:" Visual modes followed by operator +/^apple +lvld.l3vd.: +/^line 1 +Vcnewlinej.j2Vd.: +/^xxxx +jlc l.l2c----l.: +: +:" Visual mode maps (movement and text object) +:vnoremap W /\u/s-1<CR> +:vnoremap iW :<C-U>call SelectInCaps()<CR> +/^Kiwi +vWcNol.fD2vd.: +/^Jambu +llviWc-l.l2vdl.: +: +:" Operator-pending mode maps (movement and text object) +:onoremap W /\u/<CR> +:onoremap <Leader>W :<C-U>call MoveToCap()<CR> +:onoremap iW :<C-U>call SelectInCaps()<CR> +/^Pineapple +cW-l.l2.l.: +/^Juniper +g?\WfD.: +/^Lemon +yiWPlciWNew: +: +:" Patch 7.3.879: Properly abort Operator-pending mode for "dv:<Esc>" etc. +/^zzzz +dV: dv: :set noma | let v:errmsg = '' +d: :set ma | put = v:errmsg =~# '^E21' ? 'ok' : 'failed' +dv:dV::set noma | let v:errmsg = '' +d::set ma | put = v:errmsg =~# '^E21' ? 'failed' : 'ok' +:/^start:/+2,$w! test.out +:q! +ENDTEST + +start: + +apple banana cherry + +line 1 line 1 +line 2 line 2 +line 3 line 3 +line 4 line 4 +line 5 line 5 +line 6 line 6 + +xxxxxxxxxxxxx +xxxxxxxxxxxxx +xxxxxxxxxxxxx +xxxxxxxxxxxxx + +KiwiRaspberryDateWatermelonPeach +JambuRambutanBananaTangerineMango + +PineappleQuinceLoganberryOrangeGrapefruitKiwiZ +JuniperDurianZ +LemonNectarineZ + +zzzz +zzzz