Mercurial > vim
annotate src/testdir/test_undo.vim @ 19665:b64343cbabc6 v8.2.0389
patch 8.2.0389: delayed redraw when shifting text from Insert mode
Commit: https://github.com/vim/vim/commit/e4fc746d13f5b6a0b5c3a8efdff7de1454c3297d
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Mar 15 19:17:50 2020 +0100
patch 8.2.0389: delayed redraw when shifting text from Insert mode
Problem: Delayed redraw when shifting text from Insert mode.
Solution: Use msg_attr_keep() instead of msg(). (closes https://github.com/vim/vim/issues/5782)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 15 Mar 2020 19:30:04 +0100 |
parents | 02111977dd05 |
children | f27473034f26 |
rev | line source |
---|---|
9674
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
1 " Tests for the undo tree. |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
2 " Since this script is sourced we need to explicitly break changes up in |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
3 " undo-able pieces. Do that by setting 'undolevels'. |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
4 " Also tests :earlier and :later. |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
5 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
6 func Test_undotree() |
12827
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
7 new |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
8 |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
9 normal! Aabc |
9674
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
10 set ul=100 |
12827
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
11 let d = undotree() |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
12 call assert_equal(1, d.seq_last) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
13 call assert_equal(1, d.seq_cur) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
14 call assert_equal(0, d.save_last) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
15 call assert_equal(0, d.save_cur) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
16 call assert_equal(1, len(d.entries)) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
17 call assert_equal(1, d.entries[0].newhead) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
18 call assert_equal(1, d.entries[0].seq) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
19 call assert_true(d.entries[0].time <= d.time_cur) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
20 |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
21 normal! Adef |
9674
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
22 set ul=100 |
12827
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
23 let d = undotree() |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
24 call assert_equal(2, d.seq_last) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
25 call assert_equal(2, d.seq_cur) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
26 call assert_equal(0, d.save_last) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
27 call assert_equal(0, d.save_cur) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
28 call assert_equal(2, len(d.entries)) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
29 call assert_equal(1, d.entries[0].seq) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
30 call assert_equal(1, d.entries[1].newhead) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
31 call assert_equal(2, d.entries[1].seq) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
32 call assert_true(d.entries[1].time <= d.time_cur) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
33 |
9674
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
34 undo |
12827
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
35 set ul=100 |
9674
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
36 let d = undotree() |
12827
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
37 call assert_equal(2, d.seq_last) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
38 call assert_equal(1, d.seq_cur) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
39 call assert_equal(0, d.save_last) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
40 call assert_equal(0, d.save_cur) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
41 call assert_equal(2, len(d.entries)) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
42 call assert_equal(1, d.entries[0].seq) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
43 call assert_equal(1, d.entries[1].curhead) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
44 call assert_equal(1, d.entries[1].newhead) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
45 call assert_equal(2, d.entries[1].seq) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
46 call assert_true(d.entries[1].time == d.time_cur) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
47 |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
48 normal! Aghi |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
49 set ul=100 |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
50 let d = undotree() |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
51 call assert_equal(3, d.seq_last) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
52 call assert_equal(3, d.seq_cur) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
53 call assert_equal(0, d.save_last) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
54 call assert_equal(0, d.save_cur) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
55 call assert_equal(2, len(d.entries)) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
56 call assert_equal(1, d.entries[0].seq) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
57 call assert_equal(2, d.entries[1].alt[0].seq) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
58 call assert_equal(1, d.entries[1].newhead) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
59 call assert_equal(3, d.entries[1].seq) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
60 call assert_true(d.entries[1].time <= d.time_cur) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
61 |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
62 undo |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
63 set ul=100 |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
64 let d = undotree() |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
65 call assert_equal(3, d.seq_last) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
66 call assert_equal(1, d.seq_cur) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
67 call assert_equal(0, d.save_last) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
68 call assert_equal(0, d.save_cur) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
69 call assert_equal(2, len(d.entries)) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
70 call assert_equal(1, d.entries[0].seq) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
71 call assert_equal(2, d.entries[1].alt[0].seq) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
72 call assert_equal(1, d.entries[1].curhead) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
73 call assert_equal(1, d.entries[1].newhead) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
74 call assert_equal(3, d.entries[1].seq) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
75 call assert_true(d.entries[1].time == d.time_cur) |
9674
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
76 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
77 w! Xtest |
12827
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
78 let d = undotree() |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
79 call assert_equal(1, d.save_cur) |
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
80 call assert_equal(1, d.save_last) |
9674
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
81 call delete('Xtest') |
12827
ff494a964ab7
patch 8.0.1290: seq_cur of undotree() wrong after undo
Christian Brabandt <cb@256bit.org>
parents:
12779
diff
changeset
|
82 bwipe! Xtest |
9674
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
83 endfunc |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
84 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
85 func FillBuffer() |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
86 for i in range(1,13) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
87 put=i |
14015
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
88 " Set 'undolevels' to split undo. |
9674
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
89 exe "setg ul=" . &g:ul |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
90 endfor |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
91 endfunc |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
92 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
93 func Test_global_local_undolevels() |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
94 new one |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
95 set undolevels=5 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
96 call FillBuffer() |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
97 " will only undo the last 5 changes, end up with 13 - (5 + 1) = 7 lines |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
98 earlier 10 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
99 call assert_equal(5, &g:undolevels) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
100 call assert_equal(-123456, &l:undolevels) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
101 call assert_equal('7', getline('$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
102 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
103 new two |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
104 setlocal undolevels=2 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
105 call FillBuffer() |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
106 " will only undo the last 2 changes, end up with 13 - (2 + 1) = 10 lines |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
107 earlier 10 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
108 call assert_equal(5, &g:undolevels) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
109 call assert_equal(2, &l:undolevels) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
110 call assert_equal('10', getline('$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
111 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
112 setlocal ul=10 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
113 call assert_equal(5, &g:undolevels) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
114 call assert_equal(10, &l:undolevels) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
115 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
116 " Setting local value in "two" must not change local value in "one" |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
117 wincmd p |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
118 call assert_equal(5, &g:undolevels) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
119 call assert_equal(-123456, &l:undolevels) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
120 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
121 new three |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
122 setglobal ul=50 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
123 call assert_equal(50, &g:undolevels) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
124 call assert_equal(-123456, &l:undolevels) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
125 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
126 " Drop created windows |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
127 set ul& |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
128 new |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
129 only! |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
130 endfunc |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
131 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
132 func BackOne(expected) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
133 call feedkeys('g-', 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
134 call assert_equal(a:expected, getline(1)) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
135 endfunc |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
136 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
137 func Test_undo_del_chars() |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
138 " Setup a buffer without creating undo entries |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
139 new |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
140 set ul=-1 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
141 call setline(1, ['123-456']) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
142 set ul=100 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
143 1 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
144 call test_settime(100) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
145 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
146 " Delete three characters and undo with g- |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
147 call feedkeys('x', 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
148 call feedkeys('x', 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
149 call feedkeys('x', 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
150 call assert_equal('-456', getline(1)) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
151 call BackOne('3-456') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
152 call BackOne('23-456') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
153 call BackOne('123-456') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
154 call assert_fails("BackOne('123-456')") |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
155 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
156 :" Delete three other characters and go back in time with g- |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
157 call feedkeys('$x', 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
158 call feedkeys('x', 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
159 call feedkeys('x', 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
160 call assert_equal('123-', getline(1)) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
161 call test_settime(101) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
162 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
163 call BackOne('123-4') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
164 call BackOne('123-45') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
165 " skips '123-456' because it's older |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
166 call BackOne('-456') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
167 call BackOne('3-456') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
168 call BackOne('23-456') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
169 call BackOne('123-456') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
170 call assert_fails("BackOne('123-456')") |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
171 normal 10g+ |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
172 call assert_equal('123-', getline(1)) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
173 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
174 :" Jump two seconds and go some seconds forward and backward |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
175 call test_settime(103) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
176 call feedkeys("Aa\<Esc>", 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
177 call feedkeys("Ab\<Esc>", 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
178 call feedkeys("Ac\<Esc>", 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
179 call assert_equal('123-abc', getline(1)) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
180 earlier 1s |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
181 call assert_equal('123-', getline(1)) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
182 earlier 3s |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
183 call assert_equal('123-456', getline(1)) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
184 later 1s |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
185 call assert_equal('123-', getline(1)) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
186 later 1h |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
187 call assert_equal('123-abc', getline(1)) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
188 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
189 close! |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
190 endfunc |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
191 |
10049
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
192 func Test_undolist() |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
193 new |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
194 set ul=100 |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
195 |
14015
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
196 let a = execute('undolist') |
10049
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
197 call assert_equal("\nNothing to undo", a) |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
198 |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
199 " 1 leaf (2 changes). |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
200 call feedkeys('achange1', 'xt') |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
201 call feedkeys('achange2', 'xt') |
14015
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
202 let a = execute('undolist') |
10049
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
203 call assert_match("^\nnumber changes when *saved\n *2 *2 .*$", a) |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
204 |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
205 " 2 leaves. |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
206 call feedkeys('u', 'xt') |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
207 call feedkeys('achange3\<Esc>', 'xt') |
14015
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
208 let a = execute('undolist') |
10049
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
209 call assert_match("^\nnumber changes when *saved\n *2 *2 *.*\n *3 *2 .*$", a) |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
210 close! |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
211 endfunc |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
212 |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
213 func Test_U_command() |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
214 new |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
215 set ul=100 |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
216 call feedkeys("achange1\<Esc>", 'xt') |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
217 call feedkeys("achange2\<Esc>", 'xt') |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
218 norm! U |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
219 call assert_equal('', getline(1)) |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
220 norm! U |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
221 call assert_equal('change1change2', getline(1)) |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
222 close! |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
223 endfunc |
efc8a434f38f
commit https://github.com/vim/vim/commit/c628fdcd46e93c308f742efdf54248695960e290
Christian Brabandt <cb@256bit.org>
parents:
9674
diff
changeset
|
224 |
9674
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
225 func Test_undojoin() |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
226 new |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
227 call feedkeys("Goaaaa\<Esc>", 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
228 call feedkeys("obbbb\<Esc>", 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
229 call assert_equal(['aaaa', 'bbbb'], getline(2, '$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
230 call feedkeys("u", 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
231 call assert_equal(['aaaa'], getline(2, '$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
232 call feedkeys("obbbb\<Esc>", 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
233 undojoin |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
234 " Note: next change must not be as if typed |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
235 call feedkeys("occcc\<Esc>", 'x') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
236 call assert_equal(['aaaa', 'bbbb', 'cccc'], getline(2, '$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
237 call feedkeys("u", 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
238 call assert_equal(['aaaa'], getline(2, '$')) |
10631
cbf17371627c
patch 8.0.0205: wrong behavior after :undojoin
Christian Brabandt <cb@256bit.org>
parents:
10518
diff
changeset
|
239 bwipe! |
cbf17371627c
patch 8.0.0205: wrong behavior after :undojoin
Christian Brabandt <cb@256bit.org>
parents:
10518
diff
changeset
|
240 endfunc |
cbf17371627c
patch 8.0.0205: wrong behavior after :undojoin
Christian Brabandt <cb@256bit.org>
parents:
10518
diff
changeset
|
241 |
cbf17371627c
patch 8.0.0205: wrong behavior after :undojoin
Christian Brabandt <cb@256bit.org>
parents:
10518
diff
changeset
|
242 func Test_undojoin_redo() |
cbf17371627c
patch 8.0.0205: wrong behavior after :undojoin
Christian Brabandt <cb@256bit.org>
parents:
10518
diff
changeset
|
243 new |
cbf17371627c
patch 8.0.0205: wrong behavior after :undojoin
Christian Brabandt <cb@256bit.org>
parents:
10518
diff
changeset
|
244 call setline(1, ['first line', 'second line']) |
cbf17371627c
patch 8.0.0205: wrong behavior after :undojoin
Christian Brabandt <cb@256bit.org>
parents:
10518
diff
changeset
|
245 call feedkeys("ixx\<Esc>", 'xt') |
cbf17371627c
patch 8.0.0205: wrong behavior after :undojoin
Christian Brabandt <cb@256bit.org>
parents:
10518
diff
changeset
|
246 call feedkeys(":undojoin | redo\<CR>", 'xt') |
cbf17371627c
patch 8.0.0205: wrong behavior after :undojoin
Christian Brabandt <cb@256bit.org>
parents:
10518
diff
changeset
|
247 call assert_equal('xxfirst line', getline(1)) |
cbf17371627c
patch 8.0.0205: wrong behavior after :undojoin
Christian Brabandt <cb@256bit.org>
parents:
10518
diff
changeset
|
248 call assert_equal('second line', getline(2)) |
cbf17371627c
patch 8.0.0205: wrong behavior after :undojoin
Christian Brabandt <cb@256bit.org>
parents:
10518
diff
changeset
|
249 bwipe! |
9674
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
250 endfunc |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
251 |
18902
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
252 " undojoin not allowed after undo |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
253 func Test_undojoin_after_undo() |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
254 new |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
255 call feedkeys("ixx\<Esc>u", 'xt') |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
256 call assert_fails(':undojoin', 'E790:') |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
257 bwipe! |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
258 endfunc |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
259 |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
260 " undojoin is a noop when no change yet, or when 'undolevels' is negative |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
261 func Test_undojoin_noop() |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
262 new |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
263 call feedkeys(":undojoin\<CR>", 'xt') |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
264 call assert_equal([''], getline(1, '$')) |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
265 setlocal undolevels=-1 |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
266 call feedkeys("ixx\<Esc>u", 'xt') |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
267 call feedkeys(":undojoin\<CR>", 'xt') |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
268 call assert_equal(['xx'], getline(1, '$')) |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
269 bwipe! |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
270 endfunc |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
271 |
9674
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
272 func Test_undo_write() |
12779
73eb8a2d7f04
patch 8.0.1267: Test_swap_group may leave file behind
Christian Brabandt <cb@256bit.org>
parents:
12686
diff
changeset
|
273 call delete('Xtest') |
9674
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
274 split Xtest |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
275 call feedkeys("ione one one\<Esc>", 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
276 w! |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
277 call feedkeys("otwo\<Esc>", 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
278 call feedkeys("otwo\<Esc>", 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
279 w |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
280 call feedkeys("othree\<Esc>", 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
281 call assert_equal(['one one one', 'two', 'two', 'three'], getline(1, '$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
282 earlier 1f |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
283 call assert_equal(['one one one', 'two', 'two'], getline(1, '$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
284 earlier 1f |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
285 call assert_equal(['one one one'], getline(1, '$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
286 earlier 1f |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
287 call assert_equal([''], getline(1, '$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
288 later 1f |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
289 call assert_equal(['one one one'], getline(1, '$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
290 later 1f |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
291 call assert_equal(['one one one', 'two', 'two'], getline(1, '$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
292 later 1f |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
293 call assert_equal(['one one one', 'two', 'two', 'three'], getline(1, '$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
294 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
295 close! |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
296 call delete('Xtest') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
297 bwipe! Xtest |
19370
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
18902
diff
changeset
|
298 |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
18902
diff
changeset
|
299 call assert_fails('earlier xyz', 'E475:') |
9674
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
300 endfunc |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
301 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
302 func Test_insert_expr() |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
303 new |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
304 " calling setline() triggers undo sync |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
305 call feedkeys("oa\<Esc>", 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
306 call feedkeys("ob\<Esc>", 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
307 set ul=100 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
308 call feedkeys("o1\<Esc>a2\<C-R>=setline('.','1234')\<CR>\<CR>\<Esc>", 'x') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
309 call assert_equal(['a', 'b', '120', '34'], getline(2, '$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
310 call feedkeys("u", 'x') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
311 call assert_equal(['a', 'b', '12'], getline(2, '$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
312 call feedkeys("u", 'x') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
313 call assert_equal(['a', 'b'], getline(2, '$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
314 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
315 call feedkeys("oc\<Esc>", 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
316 set ul=100 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
317 call feedkeys("o1\<Esc>a2\<C-R>=setline('.','1234')\<CR>\<CR>\<Esc>", 'x') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
318 call assert_equal(['a', 'b', 'c', '120', '34'], getline(2, '$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
319 call feedkeys("u", 'x') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
320 call assert_equal(['a', 'b', 'c', '12'], getline(2, '$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
321 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
322 call feedkeys("od\<Esc>", 'xt') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
323 set ul=100 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
324 call feedkeys("o1\<Esc>a2\<C-R>=string(123)\<CR>\<Esc>", 'x') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
325 call assert_equal(['a', 'b', 'c', '12', 'd', '12123'], getline(2, '$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
326 call feedkeys("u", 'x') |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
327 call assert_equal(['a', 'b', 'c', '12', 'd'], getline(2, '$')) |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
328 |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
329 close! |
adc7212951ee
commit https://github.com/vim/vim/commit/170b10b421f0c9fda08b7cfd3bb043c064f3659a
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
330 endfunc |
10518
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
331 |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
332 func Test_undofile_earlier() |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
333 " Issue #1254 |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
334 " create undofile with timestamps older than Vim startup time. |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
335 let t0 = localtime() - 43200 |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
336 call test_settime(t0) |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
337 new Xfile |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
338 call feedkeys("ione\<Esc>", 'xt') |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
339 set ul=100 |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
340 call test_settime(t0 + 1) |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
341 call feedkeys("otwo\<Esc>", 'xt') |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
342 set ul=100 |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
343 call test_settime(t0 + 2) |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
344 call feedkeys("othree\<Esc>", 'xt') |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
345 set ul=100 |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
346 w |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
347 wundo Xundofile |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
348 bwipe! |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
349 " restore normal timestamps. |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
350 call test_settime(0) |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
351 new Xfile |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
352 rundo Xundofile |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
353 earlier 1d |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
354 call assert_equal('', getline(1)) |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
355 bwipe! |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
356 call delete('Xfile') |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
357 call delete('Xundofile') |
de77fa909414
commit https://github.com/vim/vim/commit/cbd4de44e8d08fba3c09eb40ad6e36e83faf020a
Christian Brabandt <cb@256bit.org>
parents:
10049
diff
changeset
|
358 endfunc |
12686
aa658b33f25a
patch 8.0.1221: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
359 |
18902
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
360 func Test_wundo_errors() |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
361 new |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
362 call setline(1, 'hello') |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
363 call assert_fails('wundo! Xdoesnotexist/Xundofile', 'E828:') |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
364 bwipe! |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
365 endfunc |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
366 |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
367 " Check that reading a truncated undo file doesn't hang. |
17630
380adf86bf66
patch 8.1.1812: reading a truncted undo file hangs Vim
Bram Moolenaar <Bram@vim.org>
parents:
16702
diff
changeset
|
368 func Test_undofile_truncated() |
380adf86bf66
patch 8.1.1812: reading a truncted undo file hangs Vim
Bram Moolenaar <Bram@vim.org>
parents:
16702
diff
changeset
|
369 new |
380adf86bf66
patch 8.1.1812: reading a truncted undo file hangs Vim
Bram Moolenaar <Bram@vim.org>
parents:
16702
diff
changeset
|
370 call setline(1, 'hello') |
380adf86bf66
patch 8.1.1812: reading a truncted undo file hangs Vim
Bram Moolenaar <Bram@vim.org>
parents:
16702
diff
changeset
|
371 set ul=100 |
380adf86bf66
patch 8.1.1812: reading a truncted undo file hangs Vim
Bram Moolenaar <Bram@vim.org>
parents:
16702
diff
changeset
|
372 wundo Xundofile |
380adf86bf66
patch 8.1.1812: reading a truncted undo file hangs Vim
Bram Moolenaar <Bram@vim.org>
parents:
16702
diff
changeset
|
373 let contents = readfile('Xundofile', 'B') |
380adf86bf66
patch 8.1.1812: reading a truncted undo file hangs Vim
Bram Moolenaar <Bram@vim.org>
parents:
16702
diff
changeset
|
374 |
380adf86bf66
patch 8.1.1812: reading a truncted undo file hangs Vim
Bram Moolenaar <Bram@vim.org>
parents:
16702
diff
changeset
|
375 " try several sizes |
380adf86bf66
patch 8.1.1812: reading a truncted undo file hangs Vim
Bram Moolenaar <Bram@vim.org>
parents:
16702
diff
changeset
|
376 for size in range(20, 500, 33) |
380adf86bf66
patch 8.1.1812: reading a truncted undo file hangs Vim
Bram Moolenaar <Bram@vim.org>
parents:
16702
diff
changeset
|
377 call writefile(contents[0:size], 'Xundofile') |
380adf86bf66
patch 8.1.1812: reading a truncted undo file hangs Vim
Bram Moolenaar <Bram@vim.org>
parents:
16702
diff
changeset
|
378 call assert_fails('rundo Xundofile', 'E825:') |
380adf86bf66
patch 8.1.1812: reading a truncted undo file hangs Vim
Bram Moolenaar <Bram@vim.org>
parents:
16702
diff
changeset
|
379 endfor |
380adf86bf66
patch 8.1.1812: reading a truncted undo file hangs Vim
Bram Moolenaar <Bram@vim.org>
parents:
16702
diff
changeset
|
380 |
380adf86bf66
patch 8.1.1812: reading a truncted undo file hangs Vim
Bram Moolenaar <Bram@vim.org>
parents:
16702
diff
changeset
|
381 bwipe! |
18058
187742518187
patch 8.1.2024: delete call commented out for debugging
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
382 call delete('Xundofile') |
17630
380adf86bf66
patch 8.1.1812: reading a truncted undo file hangs Vim
Bram Moolenaar <Bram@vim.org>
parents:
16702
diff
changeset
|
383 endfunc |
380adf86bf66
patch 8.1.1812: reading a truncted undo file hangs Vim
Bram Moolenaar <Bram@vim.org>
parents:
16702
diff
changeset
|
384 |
18902
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
385 func Test_rundo_errors() |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
386 call assert_fails('rundo XfileDoesNotExist', 'E822:') |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
387 |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
388 call writefile(['abc'], 'Xundofile') |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
389 call assert_fails('rundo Xundofile', 'E823:') |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
390 |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
391 call delete('Xundofile') |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
392 endfunc |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
393 |
12686
aa658b33f25a
patch 8.0.1221: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
394 " Test for undo working properly when executing commands from a register. |
aa658b33f25a
patch 8.0.1221: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
395 " Also test this in an empty buffer. |
aa658b33f25a
patch 8.0.1221: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
396 func Test_cmd_in_reg_undo() |
aa658b33f25a
patch 8.0.1221: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
397 enew! |
14015
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
398 let @a = "Ox\<Esc>jAy\<Esc>kdd" |
12686
aa658b33f25a
patch 8.0.1221: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
399 edit +/^$ test_undo.vim |
aa658b33f25a
patch 8.0.1221: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
400 normal @au |
aa658b33f25a
patch 8.0.1221: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
401 call assert_equal(0, &modified) |
aa658b33f25a
patch 8.0.1221: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
402 return |
aa658b33f25a
patch 8.0.1221: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
403 new |
aa658b33f25a
patch 8.0.1221: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
404 normal @au |
aa658b33f25a
patch 8.0.1221: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
405 call assert_equal(0, &modified) |
aa658b33f25a
patch 8.0.1221: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
406 only! |
14015
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
407 let @a = '' |
12686
aa658b33f25a
patch 8.0.1221: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents:
12644
diff
changeset
|
408 endfunc |
13117
cfaa513efa3f
patch 8.0.1433: illegal memory access after undo
Christian Brabandt <cb@256bit.org>
parents:
12827
diff
changeset
|
409 |
cfaa513efa3f
patch 8.0.1433: illegal memory access after undo
Christian Brabandt <cb@256bit.org>
parents:
12827
diff
changeset
|
410 " This used to cause an illegal memory access |
cfaa513efa3f
patch 8.0.1433: illegal memory access after undo
Christian Brabandt <cb@256bit.org>
parents:
12827
diff
changeset
|
411 func Test_undo_append() |
cfaa513efa3f
patch 8.0.1433: illegal memory access after undo
Christian Brabandt <cb@256bit.org>
parents:
12827
diff
changeset
|
412 new |
cfaa513efa3f
patch 8.0.1433: illegal memory access after undo
Christian Brabandt <cb@256bit.org>
parents:
12827
diff
changeset
|
413 call feedkeys("axx\<Esc>v", 'xt') |
cfaa513efa3f
patch 8.0.1433: illegal memory access after undo
Christian Brabandt <cb@256bit.org>
parents:
12827
diff
changeset
|
414 undo |
cfaa513efa3f
patch 8.0.1433: illegal memory access after undo
Christian Brabandt <cb@256bit.org>
parents:
12827
diff
changeset
|
415 norm o |
cfaa513efa3f
patch 8.0.1433: illegal memory access after undo
Christian Brabandt <cb@256bit.org>
parents:
12827
diff
changeset
|
416 quit |
cfaa513efa3f
patch 8.0.1433: illegal memory access after undo
Christian Brabandt <cb@256bit.org>
parents:
12827
diff
changeset
|
417 endfunc |
13134
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
418 |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
419 func Test_undo_0() |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
420 new |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
421 set ul=100 |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
422 normal i1 |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
423 undo |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
424 normal i2 |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
425 undo |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
426 normal i3 |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
427 |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
428 undo 0 |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
429 let d = undotree() |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
430 call assert_equal('', getline(1)) |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
431 call assert_equal(0, d.seq_cur) |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
432 |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
433 redo |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
434 let d = undotree() |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
435 call assert_equal('3', getline(1)) |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
436 call assert_equal(3, d.seq_cur) |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
437 |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
438 undo 2 |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
439 undo 0 |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
440 let d = undotree() |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
441 call assert_equal('', getline(1)) |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
442 call assert_equal(0, d.seq_cur) |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
443 |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
444 redo |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
445 let d = undotree() |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
446 call assert_equal('2', getline(1)) |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
447 call assert_equal(2, d.seq_cur) |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
448 |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
449 undo 1 |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
450 undo 0 |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
451 let d = undotree() |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
452 call assert_equal('', getline(1)) |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
453 call assert_equal(0, d.seq_cur) |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
454 |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
455 redo |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
456 let d = undotree() |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
457 call assert_equal('1', getline(1)) |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
458 call assert_equal(1, d.seq_cur) |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
459 |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
460 bwipe! |
c4b5ad2b3596
patch 8.0.1441: using ":undo 0" leaves undo in wrong state
Christian Brabandt <cb@256bit.org>
parents:
13117
diff
changeset
|
461 endfunc |
13202
2941a86f8aaa
patch 8.0.1475: invalid memory access in read_redo()
Christian Brabandt <cb@256bit.org>
parents:
13134
diff
changeset
|
462 |
18902
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
463 " undo or redo are noop if there is nothing to undo or redo |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
464 func Test_undo_redo_noop() |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
465 new |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
466 call assert_fails('undo 2', 'E830:') |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
467 |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
468 message clear |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
469 undo |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
470 let messages = split(execute('message'), "\n") |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
471 call assert_equal('Already at oldest change', messages[-1]) |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
472 |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
473 message clear |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
474 redo |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
475 let messages = split(execute('message'), "\n") |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
476 call assert_equal('Already at newest change', messages[-1]) |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
477 |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
478 bwipe! |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
479 endfunc |
b24648ebcbc9
patch 8.2.0012: some undo functionality is not tested
Bram Moolenaar <Bram@vim.org>
parents:
18894
diff
changeset
|
480 |
13202
2941a86f8aaa
patch 8.0.1475: invalid memory access in read_redo()
Christian Brabandt <cb@256bit.org>
parents:
13134
diff
changeset
|
481 func Test_redo_empty_line() |
2941a86f8aaa
patch 8.0.1475: invalid memory access in read_redo()
Christian Brabandt <cb@256bit.org>
parents:
13134
diff
changeset
|
482 new |
2941a86f8aaa
patch 8.0.1475: invalid memory access in read_redo()
Christian Brabandt <cb@256bit.org>
parents:
13134
diff
changeset
|
483 exe "norm\x16r\x160" |
2941a86f8aaa
patch 8.0.1475: invalid memory access in read_redo()
Christian Brabandt <cb@256bit.org>
parents:
13134
diff
changeset
|
484 exe "norm." |
2941a86f8aaa
patch 8.0.1475: invalid memory access in read_redo()
Christian Brabandt <cb@256bit.org>
parents:
13134
diff
changeset
|
485 bwipe! |
2941a86f8aaa
patch 8.0.1475: invalid memory access in read_redo()
Christian Brabandt <cb@256bit.org>
parents:
13134
diff
changeset
|
486 endfunc |
14015
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
487 |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
488 funct Test_undofile() |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
489 " Test undofile() without setting 'undodir'. |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
490 if has('persistent_undo') |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
491 call assert_equal(fnamemodify('.Xundofoo.un~', ':p'), undofile('Xundofoo')) |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
492 else |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
493 call assert_equal('', undofile('Xundofoo')) |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
494 endif |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
495 call assert_equal('', undofile('')) |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
496 |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
497 " Test undofile() with 'undodir' set to to an existing directory. |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
498 call mkdir('Xundodir') |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
499 set undodir=Xundodir |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
500 let cwd = getcwd() |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
501 if has('win32') |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
502 " Replace windows drive such as C:... into C%... |
15150
83a366325158
patch 8.1.0585: undo test may fail on MS-Windows
Bram Moolenaar <Bram@vim.org>
parents:
14015
diff
changeset
|
503 let cwd = substitute(cwd, '^\([a-zA-Z]\):', '\1%', 'g') |
14015
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
504 endif |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
505 let cwd = substitute(cwd . '/Xundofoo', '/', '%', 'g') |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
506 if has('persistent_undo') |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
507 call assert_equal('Xundodir/' . cwd, undofile('Xundofoo')) |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
508 else |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
509 call assert_equal('', undofile('Xundofoo')) |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
510 endif |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
511 call assert_equal('', undofile('')) |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
512 call delete('Xundodir', 'd') |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
513 |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
514 " Test undofile() with 'undodir' set to a non-existing directory. |
18035
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17630
diff
changeset
|
515 call assert_equal('', 'Xundofoo'->undofile()) |
14015
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
516 |
18473
0eeaa9a6e4e7
patch 8.1.2230: MS-Windows: testing external commands can be improved
Bram Moolenaar <Bram@vim.org>
parents:
18058
diff
changeset
|
517 if !has('win32') && isdirectory('/tmp') |
16700
46322a4e6028
patch 8.1.1352: undofile() reports wrong name
Bram Moolenaar <Bram@vim.org>
parents:
15150
diff
changeset
|
518 set undodir=/tmp |
16702
16a698aeeec1
patch 8.1.1353: undo test fails on Mac
Bram Moolenaar <Bram@vim.org>
parents:
16700
diff
changeset
|
519 if has('osx') |
16a698aeeec1
patch 8.1.1353: undo test fails on Mac
Bram Moolenaar <Bram@vim.org>
parents:
16700
diff
changeset
|
520 call assert_equal('/tmp/%private%tmp%file', undofile('///tmp/file')) |
16a698aeeec1
patch 8.1.1353: undo test fails on Mac
Bram Moolenaar <Bram@vim.org>
parents:
16700
diff
changeset
|
521 else |
16a698aeeec1
patch 8.1.1353: undo test fails on Mac
Bram Moolenaar <Bram@vim.org>
parents:
16700
diff
changeset
|
522 call assert_equal('/tmp/%tmp%file', undofile('///tmp/file')) |
16a698aeeec1
patch 8.1.1353: undo test fails on Mac
Bram Moolenaar <Bram@vim.org>
parents:
16700
diff
changeset
|
523 endif |
16700
46322a4e6028
patch 8.1.1352: undofile() reports wrong name
Bram Moolenaar <Bram@vim.org>
parents:
15150
diff
changeset
|
524 endif |
46322a4e6028
patch 8.1.1352: undofile() reports wrong name
Bram Moolenaar <Bram@vim.org>
parents:
15150
diff
changeset
|
525 |
14015
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
526 set undodir& |
9709d783261f
patch 8.1.0025: no test for the undofile() function
Christian Brabandt <cb@256bit.org>
parents:
13202
diff
changeset
|
527 endfunc |
18894
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
528 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
529 " Tests for the undo file |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
530 " Explicitly break changes up in undo-able pieces by setting 'undolevels'. |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
531 func Test_undofile_2() |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
532 set undolevels=100 undofile |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
533 edit Xtestfile |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
534 call append(0, 'this is one line') |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
535 call cursor(1, 1) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
536 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
537 " first a simple one-line change. |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
538 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
539 s/one/ONE/ |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
540 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
541 write |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
542 bwipe! |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
543 edit Xtestfile |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
544 undo |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
545 call assert_equal('this is one line', getline(1)) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
546 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
547 " change in original file fails check |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
548 set noundofile |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
549 edit! Xtestfile |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
550 s/line/Line/ |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
551 write |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
552 set undofile |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
553 bwipe! |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
554 edit Xtestfile |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
555 undo |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
556 call assert_equal('this is ONE Line', getline(1)) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
557 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
558 " add 10 lines, delete 6 lines, undo 3 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
559 set undofile |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
560 call setbufline(0, 1, ['one', 'two', 'three', 'four', 'five', 'six', |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
561 \ 'seven', 'eight', 'nine', 'ten']) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
562 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
563 normal 3Gdd |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
564 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
565 normal dd |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
566 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
567 normal dd |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
568 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
569 normal dd |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
570 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
571 normal dd |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
572 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
573 normal dd |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
574 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
575 write |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
576 bwipe! |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
577 edit Xtestfile |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
578 normal uuu |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
579 call assert_equal(['one', 'two', 'six', 'seven', 'eight', 'nine', 'ten'], |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
580 \ getline(1, '$')) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
581 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
582 " Test that reading the undofiles when setting undofile works |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
583 set noundofile undolevels=0 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
584 exe "normal i\n" |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
585 undo |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
586 edit! Xtestfile |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
587 set undofile undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
588 normal uuuuuu |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
589 call assert_equal(['one', 'two', 'three', 'four', 'five', 'six', 'seven', |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
590 \ 'eight', 'nine', 'ten'], getline(1, '$')) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
591 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
592 bwipe! |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
593 call delete('Xtestfile') |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
594 let ufile = has('vms') ? '_un_Xtestfile' : '.Xtestfile.un~' |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
595 call delete(ufile) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
596 set undofile& undolevels& |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
597 endfunc |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
598 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
599 " Test 'undofile' using a file encrypted with 'zip' crypt method |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
600 func Test_undofile_cryptmethod_zip() |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
601 edit Xtestfile |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
602 set undofile cryptmethod=zip |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
603 call append(0, ['monday', 'tuesday', 'wednesday', 'thursday', 'friday']) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
604 call cursor(5, 1) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
605 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
606 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
607 normal kkkdd |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
608 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
609 normal dd |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
610 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
611 normal dd |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
612 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
613 " encrypt the file using key 'foobar' |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
614 call feedkeys("foobar\nfoobar\n") |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
615 X |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
616 write! |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
617 bwipe! |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
618 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
619 call feedkeys("foobar\n") |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
620 edit Xtestfile |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
621 set key= |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
622 normal uu |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
623 call assert_equal(['monday', 'wednesday', 'thursday', 'friday', ''], |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
624 \ getline(1, '$')) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
625 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
626 bwipe! |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
627 call delete('Xtestfile') |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
628 let ufile = has('vms') ? '_un_Xtestfile' : '.Xtestfile.un~' |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
629 call delete(ufile) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
630 set undofile& undolevels& cryptmethod& |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
631 endfunc |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
632 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
633 " Test 'undofile' using a file encrypted with 'blowfish' crypt method |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
634 func Test_undofile_cryptmethod_blowfish() |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
635 edit Xtestfile |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
636 set undofile cryptmethod=blowfish |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
637 call append(0, ['jan', 'feb', 'mar', 'apr', 'jun']) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
638 call cursor(5, 1) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
639 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
640 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
641 exe 'normal kk0ifoo ' |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
642 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
643 normal dd |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
644 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
645 exe 'normal ibar ' |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
646 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
647 " encrypt the file using key 'foobar' |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
648 call feedkeys("foobar\nfoobar\n") |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
649 X |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
650 write! |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
651 bwipe! |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
652 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
653 call feedkeys("foobar\n") |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
654 edit Xtestfile |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
655 set key= |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
656 call search('bar') |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
657 call assert_equal('bar apr', getline('.')) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
658 undo |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
659 call assert_equal('apr', getline('.')) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
660 undo |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
661 call assert_equal('foo mar', getline('.')) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
662 undo |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
663 call assert_equal('mar', getline('.')) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
664 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
665 bwipe! |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
666 call delete('Xtestfile') |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
667 let ufile = has('vms') ? '_un_Xtestfile' : '.Xtestfile.un~' |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
668 call delete(ufile) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
669 set undofile& undolevels& cryptmethod& |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
670 endfunc |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
671 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
672 " Test 'undofile' using a file encrypted with 'blowfish2' crypt method |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
673 func Test_undofile_cryptmethod_blowfish2() |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
674 edit Xtestfile |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
675 set undofile cryptmethod=blowfish2 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
676 call append(0, ['jan', 'feb', 'mar', 'apr', 'jun']) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
677 call cursor(5, 1) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
678 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
679 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
680 exe 'normal kk0ifoo ' |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
681 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
682 normal dd |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
683 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
684 exe 'normal ibar ' |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
685 set undolevels=100 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
686 " encrypt the file using key 'foo2bar' |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
687 call feedkeys("foo2bar\nfoo2bar\n") |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
688 X |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
689 write! |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
690 bwipe! |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
691 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
692 call feedkeys("foo2bar\n") |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
693 edit Xtestfile |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
694 set key= |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
695 call search('bar') |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
696 call assert_equal('bar apr', getline('.')) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
697 normal u |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
698 call assert_equal('apr', getline('.')) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
699 normal u |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
700 call assert_equal('foo mar', getline('.')) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
701 normal u |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
702 call assert_equal('mar', getline('.')) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
703 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
704 bwipe! |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
705 call delete('Xtestfile') |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
706 let ufile = has('vms') ? '_un_Xtestfile' : '.Xtestfile.un~' |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
707 call delete(ufile) |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
708 set undofile& undolevels& cryptmethod& |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
709 endfunc |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
710 |
aad0d64cc133
patch 8.2.0008: test72 is old style
Bram Moolenaar <Bram@vim.org>
parents:
18473
diff
changeset
|
711 " vim: shiftwidth=2 sts=2 expandtab |