view src/testdir/test47.in @ 6899:cfd9a2befd67 v7.4.769

patch 7.4.769 Problem: Behavior of :diffoff is not tested. Solution: Add a bit of testing. (Olaf Dabrunz)
author Bram Moolenaar <bram@vim.org>
date Sat, 04 Jul 2015 15:05:14 +0200
parents 64427849c158
children 20ed78fab428
line wrap: on
line source

Tests for vertical splits and filler lines in diff mode

Also tests restoration of saved options by :diffoff.

STARTTEST
:so small.vim
:" Disable the title to avoid xterm keeping the wrong one.
:set notitle noicon
/^1
yG:new
pkdd:w! Xtest
ddGpkkrXoxxx:w! Xtest2
:file Nop
ggoyyyjjjozzzz
:set foldmethod=marker foldcolumn=4
:redir => nodiffsettings
:silent! :set diff? fdm? fdc? scb? crb? wrap?
:redir END
:vert diffsplit Xtest
:vert diffsplit Xtest2
:redir => diffsettings
:silent! :set diff? fdm? fdc? scb? crb? wrap?
:redir END
:" jump to second window for a moment to have filler line appear at start of
:" first window
ggpgg:let one = winline()
j:let one = one . "-" . winline()
j:let one = one . "-" . winline()
j:let one = one . "-" . winline()
j:let one = one . "-" . winline()
j:let one = one . "-" . winline()
gg:let two = winline()
j:let two = two . "-" . winline()
j:let two = two . "-" . winline()
j:let two = two . "-" . winline()
j:let two = two . "-" . winline()
gg:let three = winline()
j:let three = three . "-" . winline()
j:let three = three . "-" . winline()
j:let three = three . "-" . winline()
j:let three = three . "-" . winline()
j:let three = three . "-" . winline()
j:let three = three . "-" . winline()
:call append("$", one)
:call append("$", two)
:call append("$", three)
:$-2,$w! test.out
:"
:" Test diffoff
:diffoff!
:$put =nodiffsettings
:$put =diffsettings
1
:redir => nd1
:silent! :set diff? fdm? fdc? scb? crb? wrap?
:redir END

:redir => nd2
:silent! :set diff? fdm? fdc? scb? crb? wrap?
:redir END

:redir => nd3
:silent! :set diff? fdm? fdc? scb? crb? wrap?
:redir END

:$put =nd1
:$put =nd2
:$put =nd3
:$-39,$w >> test.out
:"
:" Test that diffing shows correct filler lines
:windo :bw!
:enew
:put =range(4,10)
:1d _
:vnew
:put =range(1,10)
:1d _
:windo :diffthis
:wincmd h
:let w0=line('w0')
:enew
:put =w0
:.w >> test.out
:unlet! one two three nodiffsettings diffsettings nd1 nd2 nd3 w0
:qa!
ENDTEST

1 aa
2 bb
3 cc
4 dd
5 ee