annotate src/testdir/test_messages.vim @ 27970:212c5894b8b1 v8.2.4510

patch 8.2.4510: Vim9: shortening commands leads to confusing script Commit: https://github.com/vim/vim/commit/204852ae2adfdde10c656ca7f14e5b4207a69172 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Mar 5 12:56:44 2022 +0000 patch 8.2.4510: Vim9: shortening commands leads to confusing script Problem: Vim9: shortening commands leads to confusing script. Solution: In Vim9 script require at least ":cont" for ":continue", "const" instead of "cons", "break" instead of "brea", "catch" instead of "cat", "else" instead of "el" "elseif" instead of "elsei" "endfor" instead of "endfo" "endif" instead of "en" "endtry" instead of "endt", "finally" instead of "fina", "throw" instead of "th", "while" instead of "wh".
author Bram Moolenaar <Bram@vim.org>
date Sat, 05 Mar 2022 14:00:03 +0100
parents 44e82999b4e1
children 7824e49e5f51
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
15219
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
1 " Tests for :messages, :echomsg, :echoerr
8897
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2
20625
116c7bd5e980 patch 8.2.0866: not enough tests for buffer writing
Bram Moolenaar <Bram@vim.org>
parents: 20603
diff changeset
3 source check.vim
16368
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
4 source shared.vim
18983
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
5 source term_util.vim
20571
5995db0fe84a patch 8.2.0839: dropping modifier when putting a character back in typeahead
Bram Moolenaar <Bram@vim.org>
parents: 20221
diff changeset
6 source view_util.vim
22592
fb5546aa6817 patch 8.2.1844: using "q" at the more prompt doesn't stop a long message
Bram Moolenaar <Bram@vim.org>
parents: 21765
diff changeset
7 source screendump.vim
16368
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
8
20168
be661435893a patch 8.2.0639: MS-Windows: messages test still fails
Bram Moolenaar <Bram@vim.org>
parents: 20166
diff changeset
9 func Test_messages()
8897
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
10 let oldmore = &more
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
11 try
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
12 set nomore
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
13
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
14 let arr = map(range(10), '"hello" . v:val')
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
15 for s in arr
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
16 echomsg s | redraw
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
17 endfor
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
18
8905
9200836eee15 commit https://github.com/vim/vim/commit/bea1ede1c59a11ca5bf9d91cd30b7b2937b9fb41
Christian Brabandt <cb@256bit.org>
parents: 8897
diff changeset
19 " get last two messages
8897
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
20 redir => result
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
21 2messages | redraw
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
22 redir END
8905
9200836eee15 commit https://github.com/vim/vim/commit/bea1ede1c59a11ca5bf9d91cd30b7b2937b9fb41
Christian Brabandt <cb@256bit.org>
parents: 8897
diff changeset
23 let msg_list = split(result, "\n")
9200836eee15 commit https://github.com/vim/vim/commit/bea1ede1c59a11ca5bf9d91cd30b7b2937b9fb41
Christian Brabandt <cb@256bit.org>
parents: 8897
diff changeset
24 call assert_equal(["hello8", "hello9"], msg_list)
8897
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
25
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
26 " clear messages without last one
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
27 1messages clear
20168
be661435893a patch 8.2.0639: MS-Windows: messages test still fails
Bram Moolenaar <Bram@vim.org>
parents: 20166
diff changeset
28 let msg_list = GetMessages()
8905
9200836eee15 commit https://github.com/vim/vim/commit/bea1ede1c59a11ca5bf9d91cd30b7b2937b9fb41
Christian Brabandt <cb@256bit.org>
parents: 8897
diff changeset
29 call assert_equal(['hello9'], msg_list)
8897
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
30
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
31 " clear all messages
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
32 messages clear
20168
be661435893a patch 8.2.0639: MS-Windows: messages test still fails
Bram Moolenaar <Bram@vim.org>
parents: 20166
diff changeset
33 let msg_list = GetMessages()
be661435893a patch 8.2.0639: MS-Windows: messages test still fails
Bram Moolenaar <Bram@vim.org>
parents: 20166
diff changeset
34 call assert_equal([], msg_list)
8897
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
35 finally
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
36 let &more = oldmore
a410390e340b commit https://github.com/vim/vim/commit/451f849fd6282a4facd4f0f58af62837443fb5a6
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
37 endtry
20041
3601e816a569 patch 8.2.0576: some errors are not covered by tests
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
38
3601e816a569 patch 8.2.0576: some errors are not covered by tests
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
39 call assert_fails('message 1', 'E474:')
20168
be661435893a patch 8.2.0639: MS-Windows: messages test still fails
Bram Moolenaar <Bram@vim.org>
parents: 20166
diff changeset
40 endfunc
13968
d111462e0173 patch 8.1.0002: :stopinsert changes the message position
Christian Brabandt <cb@256bit.org>
parents: 8905
diff changeset
41
14202
51693b1a640e patch 8.1.0118: duplicate error message for put command
Christian Brabandt <cb@256bit.org>
parents: 13968
diff changeset
42 " Patch 7.4.1696 defined the "clearmode()" function for clearing the mode
13968
d111462e0173 patch 8.1.0002: :stopinsert changes the message position
Christian Brabandt <cb@256bit.org>
parents: 8905
diff changeset
43 " indicator (e.g., "-- INSERT --") when ":stopinsert" is invoked. Message
d111462e0173 patch 8.1.0002: :stopinsert changes the message position
Christian Brabandt <cb@256bit.org>
parents: 8905
diff changeset
44 " output could then be disturbed when 'cmdheight' was greater than one.
d111462e0173 patch 8.1.0002: :stopinsert changes the message position
Christian Brabandt <cb@256bit.org>
parents: 8905
diff changeset
45 " This test ensures that the bugfix for this issue remains in place.
15406
63b02fcf1361 patch 8.1.0711: test files still use function!
Bram Moolenaar <Bram@vim.org>
parents: 15219
diff changeset
46 func Test_stopinsert_does_not_break_message_output()
13968
d111462e0173 patch 8.1.0002: :stopinsert changes the message position
Christian Brabandt <cb@256bit.org>
parents: 8905
diff changeset
47 set cmdheight=2
d111462e0173 patch 8.1.0002: :stopinsert changes the message position
Christian Brabandt <cb@256bit.org>
parents: 8905
diff changeset
48 redraw!
d111462e0173 patch 8.1.0002: :stopinsert changes the message position
Christian Brabandt <cb@256bit.org>
parents: 8905
diff changeset
49
d111462e0173 patch 8.1.0002: :stopinsert changes the message position
Christian Brabandt <cb@256bit.org>
parents: 8905
diff changeset
50 stopinsert | echo 'test echo'
d111462e0173 patch 8.1.0002: :stopinsert changes the message position
Christian Brabandt <cb@256bit.org>
parents: 8905
diff changeset
51 call assert_equal(116, screenchar(&lines - 1, 1))
d111462e0173 patch 8.1.0002: :stopinsert changes the message position
Christian Brabandt <cb@256bit.org>
parents: 8905
diff changeset
52 call assert_equal(32, screenchar(&lines, 1))
d111462e0173 patch 8.1.0002: :stopinsert changes the message position
Christian Brabandt <cb@256bit.org>
parents: 8905
diff changeset
53 redraw!
d111462e0173 patch 8.1.0002: :stopinsert changes the message position
Christian Brabandt <cb@256bit.org>
parents: 8905
diff changeset
54
d111462e0173 patch 8.1.0002: :stopinsert changes the message position
Christian Brabandt <cb@256bit.org>
parents: 8905
diff changeset
55 stopinsert | echomsg 'test echomsg'
d111462e0173 patch 8.1.0002: :stopinsert changes the message position
Christian Brabandt <cb@256bit.org>
parents: 8905
diff changeset
56 call assert_equal(116, screenchar(&lines - 1, 1))
d111462e0173 patch 8.1.0002: :stopinsert changes the message position
Christian Brabandt <cb@256bit.org>
parents: 8905
diff changeset
57 call assert_equal(32, screenchar(&lines, 1))
d111462e0173 patch 8.1.0002: :stopinsert changes the message position
Christian Brabandt <cb@256bit.org>
parents: 8905
diff changeset
58 redraw!
d111462e0173 patch 8.1.0002: :stopinsert changes the message position
Christian Brabandt <cb@256bit.org>
parents: 8905
diff changeset
59
d111462e0173 patch 8.1.0002: :stopinsert changes the message position
Christian Brabandt <cb@256bit.org>
parents: 8905
diff changeset
60 set cmdheight&
15406
63b02fcf1361 patch 8.1.0711: test files still use function!
Bram Moolenaar <Bram@vim.org>
parents: 15219
diff changeset
61 endfunc
15097
1946487c74ba patch 8.1.0559: command line completion not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents: 14202
diff changeset
62
1946487c74ba patch 8.1.0559: command line completion not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents: 14202
diff changeset
63 func Test_message_completion()
1946487c74ba patch 8.1.0559: command line completion not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents: 14202
diff changeset
64 call feedkeys(":message \<C-A>\<C-B>\"\<CR>", 'tx')
1946487c74ba patch 8.1.0559: command line completion not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents: 14202
diff changeset
65 call assert_equal('"message clear', @:)
1946487c74ba patch 8.1.0559: command line completion not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents: 14202
diff changeset
66 endfunc
15219
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
67
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
68 func Test_echomsg()
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
69 call assert_equal("\nhello", execute(':echomsg "hello"'))
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
70 call assert_equal("\n", execute(':echomsg ""'))
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
71 call assert_equal("\n12345", execute(':echomsg 12345'))
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
72 call assert_equal("\n[]", execute(':echomsg []'))
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
73 call assert_equal("\n[1, 2, 3]", execute(':echomsg [1, 2, 3]'))
20126
831b1ea43020 patch 8.2.0618: echoing a null list results in no output
Bram Moolenaar <Bram@vim.org>
parents: 20041
diff changeset
74 call assert_equal("\n[1, 2, []]", execute(':echomsg [1, 2, test_null_list()]'))
15219
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
75 call assert_equal("\n{}", execute(':echomsg {}'))
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
76 call assert_equal("\n{'a': 1, 'b': 2}", execute(':echomsg {"a": 1, "b": 2}'))
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
77 if has('float')
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
78 call assert_equal("\n1.23", execute(':echomsg 1.23'))
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
79 endif
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
80 call assert_match("function('<lambda>\\d*')", execute(':echomsg {-> 1234}'))
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
81 endfunc
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
82
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
83 func Test_echoerr()
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
84 call test_ignore_error('IgNoRe')
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
85 call assert_equal("\nIgNoRe hello", execute(':echoerr "IgNoRe hello"'))
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
86 call assert_equal("\n12345 IgNoRe", execute(':echoerr 12345 "IgNoRe"'))
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
87 call assert_equal("\n[1, 2, 'IgNoRe']", execute(':echoerr [1, 2, "IgNoRe"]'))
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
88 call assert_equal("\n{'IgNoRe': 2, 'a': 1}", execute(':echoerr {"a": 1, "IgNoRe": 2}'))
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
89 if has('float')
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
90 call assert_equal("\n1.23 IgNoRe", execute(':echoerr 1.23 "IgNoRe"'))
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
91 endif
18031
8a2fb21c23c0 patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents: 17833
diff changeset
92 eval '<lambda>'->test_ignore_error()
15219
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
93 call assert_match("function('<lambda>\\d*')", execute(':echoerr {-> 1234}'))
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
94 call test_ignore_error('RESET')
dada0b389d4f patch 8.1.0619: :echomsg and :echoerr do not handle List and Dict
Bram Moolenaar <Bram@vim.org>
parents: 15097
diff changeset
95 endfunc
16368
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
96
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
97 func Test_mode_message_at_leaving_insert_by_ctrl_c()
21765
08940efa6b4e patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents: 20627
diff changeset
98 CheckFeature terminal
08940efa6b4e patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents: 20627
diff changeset
99 CheckNotGui
16368
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
100
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
101 " Set custom statusline built by user-defined function.
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
102 let testfile = 'Xtest.vim'
17172
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16374
diff changeset
103 let lines =<< trim END
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16374
diff changeset
104 func StatusLine() abort
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16374
diff changeset
105 return ""
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16374
diff changeset
106 endfunc
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16374
diff changeset
107 set statusline=%!StatusLine()
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16374
diff changeset
108 set laststatus=2
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16374
diff changeset
109 END
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16374
diff changeset
110 call writefile(lines, testfile)
16368
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
111
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
112 let rows = 10
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
113 let buf = term_start([GetVimProg(), '--clean', '-S', testfile], {'term_rows': rows})
19954
c087099e9163 patch 8.2.0533: tests using term_wait() can still be flaky
Bram Moolenaar <Bram@vim.org>
parents: 19754
diff changeset
114 call TermWait(buf, 100)
16368
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
115 call assert_equal('run', job_status(term_getjob(buf)))
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
116
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
117 call term_sendkeys(buf, "i")
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
118 call WaitForAssert({-> assert_match('^-- INSERT --\s*$', term_getline(buf, rows))})
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
119 call term_sendkeys(buf, "\<C-C>")
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
120 call WaitForAssert({-> assert_match('^\s*$', term_getline(buf, rows))})
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
121
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
122 call term_sendkeys(buf, ":qall!\<CR>")
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
123 call WaitForAssert({-> assert_equal('dead', job_status(term_getjob(buf)))})
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
124 exe buf . 'bwipe!'
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
125 call delete(testfile)
a3b5cbd2effe patch 8.1.1189: mode is not cleared when leaving Insert mode
Bram Moolenaar <Bram@vim.org>
parents: 15406
diff changeset
126 endfunc
16374
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
127
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
128 func Test_mode_message_at_leaving_insert_with_esc_mapped()
21765
08940efa6b4e patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents: 20627
diff changeset
129 CheckFeature terminal
08940efa6b4e patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents: 20627
diff changeset
130 CheckNotGui
16374
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
131
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
132 " Set custom statusline built by user-defined function.
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
133 let testfile = 'Xtest.vim'
17172
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16374
diff changeset
134 let lines =<< trim END
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16374
diff changeset
135 set laststatus=2
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16374
diff changeset
136 inoremap <Esc> <Esc>00
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16374
diff changeset
137 END
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16374
diff changeset
138 call writefile(lines, testfile)
16374
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
139
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
140 let rows = 10
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
141 let buf = term_start([GetVimProg(), '--clean', '-S', testfile], {'term_rows': rows})
19954
c087099e9163 patch 8.2.0533: tests using term_wait() can still be flaky
Bram Moolenaar <Bram@vim.org>
parents: 19754
diff changeset
142 call WaitForAssert({-> assert_match('0,0-1\s*All$', term_getline(buf, rows - 1))})
16374
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
143 call assert_equal('run', job_status(term_getjob(buf)))
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
144
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
145 call term_sendkeys(buf, "i")
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
146 call WaitForAssert({-> assert_match('^-- INSERT --\s*$', term_getline(buf, rows))})
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
147 call term_sendkeys(buf, "\<Esc>")
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
148 call WaitForAssert({-> assert_match('^\s*$', term_getline(buf, rows))})
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
149
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
150 call term_sendkeys(buf, ":qall!\<CR>")
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
151 call WaitForAssert({-> assert_equal('dead', job_status(term_getjob(buf)))})
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
152 exe buf . 'bwipe!'
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
153 call delete(testfile)
57c37c17ff9d patch 8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Bram Moolenaar <Bram@vim.org>
parents: 16368
diff changeset
154 endfunc
17833
8377ec7c5824 patch 8.1.1913: not easy to compute the space on the command line
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
155
8377ec7c5824 patch 8.1.1913: not easy to compute the space on the command line
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
156 func Test_echospace()
8377ec7c5824 patch 8.1.1913: not easy to compute the space on the command line
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
157 set noruler noshowcmd laststatus=1
8377ec7c5824 patch 8.1.1913: not easy to compute the space on the command line
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
158 call assert_equal(&columns - 1, v:echospace)
8377ec7c5824 patch 8.1.1913: not easy to compute the space on the command line
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
159 split
8377ec7c5824 patch 8.1.1913: not easy to compute the space on the command line
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
160 call assert_equal(&columns - 1, v:echospace)
8377ec7c5824 patch 8.1.1913: not easy to compute the space on the command line
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
161 set ruler
8377ec7c5824 patch 8.1.1913: not easy to compute the space on the command line
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
162 call assert_equal(&columns - 1, v:echospace)
8377ec7c5824 patch 8.1.1913: not easy to compute the space on the command line
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
163 close
8377ec7c5824 patch 8.1.1913: not easy to compute the space on the command line
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
164 call assert_equal(&columns - 19, v:echospace)
8377ec7c5824 patch 8.1.1913: not easy to compute the space on the command line
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
165 set showcmd noruler
8377ec7c5824 patch 8.1.1913: not easy to compute the space on the command line
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
166 call assert_equal(&columns - 12, v:echospace)
8377ec7c5824 patch 8.1.1913: not easy to compute the space on the command line
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
167 set showcmd ruler
8377ec7c5824 patch 8.1.1913: not easy to compute the space on the command line
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
168 call assert_equal(&columns - 29, v:echospace)
8377ec7c5824 patch 8.1.1913: not easy to compute the space on the command line
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
169
8377ec7c5824 patch 8.1.1913: not easy to compute the space on the command line
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
170 set ruler& showcmd&
8377ec7c5824 patch 8.1.1913: not easy to compute the space on the command line
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
171 endfunc
18983
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
172
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
173 " Test more-prompt (see :help more-prompt).
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
174 func Test_message_more()
20625
116c7bd5e980 patch 8.2.0866: not enough tests for buffer writing
Bram Moolenaar <Bram@vim.org>
parents: 20603
diff changeset
175 CheckRunVimInTerminal
18983
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
176 let buf = RunVimInTerminal('', {'rows': 6})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
177 call term_sendkeys(buf, ":call setline(1, range(1, 100))\n")
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
178
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
179 call term_sendkeys(buf, ":%p#\n")
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
180 call WaitForAssert({-> assert_equal(' 5 5', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
181 call WaitForAssert({-> assert_equal('-- More --', term_getline(buf, 6))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
182
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
183 call term_sendkeys(buf, '?')
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
184 call WaitForAssert({-> assert_equal(' 5 5', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
185 call WaitForAssert({-> assert_equal('-- More -- SPACE/d/j: screen/page/line down, b/u/k: up, q: quit ', term_getline(buf, 6))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
186
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
187 " Down a line with j, <CR>, <NL> or <Down>.
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
188 call term_sendkeys(buf, "j")
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
189 call WaitForAssert({-> assert_equal(' 6 6', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
190 call WaitForAssert({-> assert_equal('-- More --', term_getline(buf, 6))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
191 call term_sendkeys(buf, "\<NL>")
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
192 call WaitForAssert({-> assert_equal(' 7 7', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
193 call term_sendkeys(buf, "\<CR>")
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
194 call WaitForAssert({-> assert_equal(' 8 8', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
195 call term_sendkeys(buf, "\<Down>")
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
196 call WaitForAssert({-> assert_equal(' 9 9', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
197
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
198 " Down a screen with <Space>, f, or <PageDown>.
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
199 call term_sendkeys(buf, 'f')
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
200 call WaitForAssert({-> assert_equal(' 14 14', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
201 call WaitForAssert({-> assert_equal('-- More --', term_getline(buf, 6))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
202 call term_sendkeys(buf, ' ')
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
203 call WaitForAssert({-> assert_equal(' 19 19', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
204 call term_sendkeys(buf, "\<PageDown>")
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
205 call WaitForAssert({-> assert_equal(' 24 24', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
206
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
207 " Down a page (half a screen) with d.
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
208 call term_sendkeys(buf, 'd')
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
209 call WaitForAssert({-> assert_equal(' 27 27', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
210
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
211 " Down all the way with 'G'.
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
212 call term_sendkeys(buf, 'G')
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
213 call WaitForAssert({-> assert_equal('100 100', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
214 call WaitForAssert({-> assert_equal('Press ENTER or type command to continue', term_getline(buf, 6))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
215
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
216 " Up a line k, <BS> or <Up>.
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
217 call term_sendkeys(buf, 'k')
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
218 call WaitForAssert({-> assert_equal(' 99 99', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
219 call term_sendkeys(buf, "\<BS>")
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
220 call WaitForAssert({-> assert_equal(' 98 98', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
221 call term_sendkeys(buf, "\<Up>")
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
222 call WaitForAssert({-> assert_equal(' 97 97', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
223
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
224 " Up a screen with b or <PageUp>.
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
225 call term_sendkeys(buf, 'b')
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
226 call WaitForAssert({-> assert_equal(' 92 92', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
227 call term_sendkeys(buf, "\<PageUp>")
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
228 call WaitForAssert({-> assert_equal(' 87 87', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
229
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
230 " Up a page (half a screen) with u.
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
231 call term_sendkeys(buf, 'u')
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
232 call WaitForAssert({-> assert_equal(' 84 84', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
233
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
234 " Up all the way with 'g'.
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
235 call term_sendkeys(buf, 'g')
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
236 call WaitForAssert({-> assert_equal(' 5 5', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
237 call WaitForAssert({-> assert_equal('-- More --', term_getline(buf, 6))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
238
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
239 " All the way down. Pressing f should do nothing but pressing
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
240 " space should end the more prompt.
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
241 call term_sendkeys(buf, 'G')
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
242 call WaitForAssert({-> assert_equal('100 100', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
243 call WaitForAssert({-> assert_equal('Press ENTER or type command to continue', term_getline(buf, 6))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
244 call term_sendkeys(buf, 'f')
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
245 call WaitForAssert({-> assert_equal('100 100', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
246 call term_sendkeys(buf, ' ')
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
247 call WaitForAssert({-> assert_equal('100', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
248
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
249 " Pressing g< shows the previous command output.
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
250 call term_sendkeys(buf, 'g<')
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
251 call WaitForAssert({-> assert_equal('100 100', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
252 call WaitForAssert({-> assert_equal('Press ENTER or type command to continue', term_getline(buf, 6))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
253
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
254 call term_sendkeys(buf, ":%p#\n")
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
255 call WaitForAssert({-> assert_equal(' 5 5', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
256 call WaitForAssert({-> assert_equal('-- More --', term_getline(buf, 6))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
257
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
258 " Stop command output with q, <Esc> or CTRL-C.
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
259 call term_sendkeys(buf, 'q')
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
260 call WaitForAssert({-> assert_equal('100', term_getline(buf, 5))})
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
261
24134
72e9b861bc92 patch 8.2.2608: character input not fully tested
Bram Moolenaar <Bram@vim.org>
parents: 23132
diff changeset
262 " Execute a : command from the more prompt
72e9b861bc92 patch 8.2.2608: character input not fully tested
Bram Moolenaar <Bram@vim.org>
parents: 23132
diff changeset
263 call term_sendkeys(buf, ":%p#\n")
72e9b861bc92 patch 8.2.2608: character input not fully tested
Bram Moolenaar <Bram@vim.org>
parents: 23132
diff changeset
264 call term_wait(buf)
72e9b861bc92 patch 8.2.2608: character input not fully tested
Bram Moolenaar <Bram@vim.org>
parents: 23132
diff changeset
265 call WaitForAssert({-> assert_equal('-- More --', term_getline(buf, 6))})
72e9b861bc92 patch 8.2.2608: character input not fully tested
Bram Moolenaar <Bram@vim.org>
parents: 23132
diff changeset
266 call term_sendkeys(buf, ":")
72e9b861bc92 patch 8.2.2608: character input not fully tested
Bram Moolenaar <Bram@vim.org>
parents: 23132
diff changeset
267 call term_wait(buf)
72e9b861bc92 patch 8.2.2608: character input not fully tested
Bram Moolenaar <Bram@vim.org>
parents: 23132
diff changeset
268 call WaitForAssert({-> assert_equal(':', term_getline(buf, 6))})
72e9b861bc92 patch 8.2.2608: character input not fully tested
Bram Moolenaar <Bram@vim.org>
parents: 23132
diff changeset
269 call term_sendkeys(buf, "echo 'Hello'\n")
72e9b861bc92 patch 8.2.2608: character input not fully tested
Bram Moolenaar <Bram@vim.org>
parents: 23132
diff changeset
270 call term_wait(buf)
72e9b861bc92 patch 8.2.2608: character input not fully tested
Bram Moolenaar <Bram@vim.org>
parents: 23132
diff changeset
271 call WaitForAssert({-> assert_equal('Hello ', term_getline(buf, 5))})
72e9b861bc92 patch 8.2.2608: character input not fully tested
Bram Moolenaar <Bram@vim.org>
parents: 23132
diff changeset
272
19279
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
273 call StopVimInTerminal(buf)
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
274 endfunc
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
275
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
276 func Test_ask_yesno()
20625
116c7bd5e980 patch 8.2.0866: not enough tests for buffer writing
Bram Moolenaar <Bram@vim.org>
parents: 20603
diff changeset
277 CheckRunVimInTerminal
19279
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
278 let buf = RunVimInTerminal('', {'rows': 6})
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
279 call term_sendkeys(buf, ":call setline(1, range(1, 2))\n")
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
280
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
281 call term_sendkeys(buf, ":2,1s/^/n/\n")
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
282 call WaitForAssert({-> assert_equal('Backwards range given, OK to swap (y/n)?', term_getline(buf, 6))})
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
283 call term_sendkeys(buf, "n")
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
284 call WaitForAssert({-> assert_match('^Backwards range given, OK to swap (y/n)?n *1,1 *All$', term_getline(buf, 6))})
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
285 call WaitForAssert({-> assert_equal('1', term_getline(buf, 1))})
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
286
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
287 call term_sendkeys(buf, ":2,1s/^/Esc/\n")
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
288 call WaitForAssert({-> assert_equal('Backwards range given, OK to swap (y/n)?', term_getline(buf, 6))})
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
289 call term_sendkeys(buf, "\<Esc>")
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
290 call WaitForAssert({-> assert_match('^Backwards range given, OK to swap (y/n)?n *1,1 *All$', term_getline(buf, 6))})
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
291 call WaitForAssert({-> assert_equal('1', term_getline(buf, 1))})
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
292
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
293 call term_sendkeys(buf, ":2,1s/^/y/\n")
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
294 call WaitForAssert({-> assert_equal('Backwards range given, OK to swap (y/n)?', term_getline(buf, 6))})
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
295 call term_sendkeys(buf, "y")
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
296 call WaitForAssert({-> assert_match('^Backwards range given, OK to swap (y/n)?y *2,1 *All$', term_getline(buf, 6))})
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
297 call WaitForAssert({-> assert_equal('y1', term_getline(buf, 1))})
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
298 call WaitForAssert({-> assert_equal('y2', term_getline(buf, 2))})
25cb7ab433c6 patch 8.2.0198: no tests for y/n prompt
Bram Moolenaar <Bram@vim.org>
parents: 19083
diff changeset
299
18983
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
300 call StopVimInTerminal(buf)
54baf548bff9 patch 8.2.0052: more-prompt not properly tested
Bram Moolenaar <Bram@vim.org>
parents: 18031
diff changeset
301 endfunc
19081
3b1f83fdaabc patch 8.2.0101: crash when passing null object to ":echomsg"
Bram Moolenaar <Bram@vim.org>
parents: 18983
diff changeset
302
3b1f83fdaabc patch 8.2.0101: crash when passing null object to ":echomsg"
Bram Moolenaar <Bram@vim.org>
parents: 18983
diff changeset
303 func Test_null()
3b1f83fdaabc patch 8.2.0101: crash when passing null object to ":echomsg"
Bram Moolenaar <Bram@vim.org>
parents: 18983
diff changeset
304 echom test_null_list()
3b1f83fdaabc patch 8.2.0101: crash when passing null object to ":echomsg"
Bram Moolenaar <Bram@vim.org>
parents: 18983
diff changeset
305 echom test_null_dict()
3b1f83fdaabc patch 8.2.0101: crash when passing null object to ":echomsg"
Bram Moolenaar <Bram@vim.org>
parents: 18983
diff changeset
306 echom test_null_blob()
3b1f83fdaabc patch 8.2.0101: crash when passing null object to ":echomsg"
Bram Moolenaar <Bram@vim.org>
parents: 18983
diff changeset
307 echom test_null_string()
20158
94f05de75e9f patch 8.2.0634: crash with null partial and blob
Bram Moolenaar <Bram@vim.org>
parents: 20126
diff changeset
308 echom test_null_function()
19081
3b1f83fdaabc patch 8.2.0101: crash when passing null object to ":echomsg"
Bram Moolenaar <Bram@vim.org>
parents: 18983
diff changeset
309 echom test_null_partial()
19083
82410cbaa042 patch 8.2.0102: messages test fails in small version
Bram Moolenaar <Bram@vim.org>
parents: 19081
diff changeset
310 if has('job')
82410cbaa042 patch 8.2.0102: messages test fails in small version
Bram Moolenaar <Bram@vim.org>
parents: 19081
diff changeset
311 echom test_null_job()
82410cbaa042 patch 8.2.0102: messages test fails in small version
Bram Moolenaar <Bram@vim.org>
parents: 19081
diff changeset
312 echom test_null_channel()
82410cbaa042 patch 8.2.0102: messages test fails in small version
Bram Moolenaar <Bram@vim.org>
parents: 19081
diff changeset
313 endif
19081
3b1f83fdaabc patch 8.2.0101: crash when passing null object to ":echomsg"
Bram Moolenaar <Bram@vim.org>
parents: 18983
diff changeset
314 endfunc
20158
94f05de75e9f patch 8.2.0634: crash with null partial and blob
Bram Moolenaar <Bram@vim.org>
parents: 20126
diff changeset
315
20571
5995db0fe84a patch 8.2.0839: dropping modifier when putting a character back in typeahead
Bram Moolenaar <Bram@vim.org>
parents: 20221
diff changeset
316 func Test_mapping_at_hit_return_prompt()
5995db0fe84a patch 8.2.0839: dropping modifier when putting a character back in typeahead
Bram Moolenaar <Bram@vim.org>
parents: 20221
diff changeset
317 nnoremap <C-B> :echo "hit ctrl-b"<CR>
5995db0fe84a patch 8.2.0839: dropping modifier when putting a character back in typeahead
Bram Moolenaar <Bram@vim.org>
parents: 20221
diff changeset
318 call feedkeys(":ls\<CR>", "xt")
20627
8bce783af0cb patch 8.2.0867: using {xxx} for encoding a modifier is not nice
Bram Moolenaar <Bram@vim.org>
parents: 20625
diff changeset
319 call feedkeys("\<*C-B>", "xt")
20571
5995db0fe84a patch 8.2.0839: dropping modifier when putting a character back in typeahead
Bram Moolenaar <Bram@vim.org>
parents: 20221
diff changeset
320 call assert_match('hit ctrl-b', Screenline(&lines - 1))
5995db0fe84a patch 8.2.0839: dropping modifier when putting a character back in typeahead
Bram Moolenaar <Bram@vim.org>
parents: 20221
diff changeset
321 nunmap <C-B>
5995db0fe84a patch 8.2.0839: dropping modifier when putting a character back in typeahead
Bram Moolenaar <Bram@vim.org>
parents: 20221
diff changeset
322 endfunc
5995db0fe84a patch 8.2.0839: dropping modifier when putting a character back in typeahead
Bram Moolenaar <Bram@vim.org>
parents: 20221
diff changeset
323
22592
fb5546aa6817 patch 8.2.1844: using "q" at the more prompt doesn't stop a long message
Bram Moolenaar <Bram@vim.org>
parents: 21765
diff changeset
324 func Test_quit_long_message()
fb5546aa6817 patch 8.2.1844: using "q" at the more prompt doesn't stop a long message
Bram Moolenaar <Bram@vim.org>
parents: 21765
diff changeset
325 CheckScreendump
fb5546aa6817 patch 8.2.1844: using "q" at the more prompt doesn't stop a long message
Bram Moolenaar <Bram@vim.org>
parents: 21765
diff changeset
326
fb5546aa6817 patch 8.2.1844: using "q" at the more prompt doesn't stop a long message
Bram Moolenaar <Bram@vim.org>
parents: 21765
diff changeset
327 let content =<< trim END
fb5546aa6817 patch 8.2.1844: using "q" at the more prompt doesn't stop a long message
Bram Moolenaar <Bram@vim.org>
parents: 21765
diff changeset
328 echom range(9999)->join("\x01")
fb5546aa6817 patch 8.2.1844: using "q" at the more prompt doesn't stop a long message
Bram Moolenaar <Bram@vim.org>
parents: 21765
diff changeset
329 END
fb5546aa6817 patch 8.2.1844: using "q" at the more prompt doesn't stop a long message
Bram Moolenaar <Bram@vim.org>
parents: 21765
diff changeset
330 call writefile(content, 'Xtest_quit_message')
fb5546aa6817 patch 8.2.1844: using "q" at the more prompt doesn't stop a long message
Bram Moolenaar <Bram@vim.org>
parents: 21765
diff changeset
331 let buf = RunVimInTerminal('-S Xtest_quit_message', #{rows: 6})
fb5546aa6817 patch 8.2.1844: using "q" at the more prompt doesn't stop a long message
Bram Moolenaar <Bram@vim.org>
parents: 21765
diff changeset
332 call term_sendkeys(buf, "q")
fb5546aa6817 patch 8.2.1844: using "q" at the more prompt doesn't stop a long message
Bram Moolenaar <Bram@vim.org>
parents: 21765
diff changeset
333 call VerifyScreenDump(buf, 'Test_quit_long_message', {})
fb5546aa6817 patch 8.2.1844: using "q" at the more prompt doesn't stop a long message
Bram Moolenaar <Bram@vim.org>
parents: 21765
diff changeset
334
fb5546aa6817 patch 8.2.1844: using "q" at the more prompt doesn't stop a long message
Bram Moolenaar <Bram@vim.org>
parents: 21765
diff changeset
335 " clean up
fb5546aa6817 patch 8.2.1844: using "q" at the more prompt doesn't stop a long message
Bram Moolenaar <Bram@vim.org>
parents: 21765
diff changeset
336 call StopVimInTerminal(buf)
23132
855b818aae9b patch 8.2.2112: running tests may leave some files behind
Bram Moolenaar <Bram@vim.org>
parents: 22592
diff changeset
337 call delete('Xtest_quit_message')
22592
fb5546aa6817 patch 8.2.1844: using "q" at the more prompt doesn't stop a long message
Bram Moolenaar <Bram@vim.org>
parents: 21765
diff changeset
338 endfunc
fb5546aa6817 patch 8.2.1844: using "q" at the more prompt doesn't stop a long message
Bram Moolenaar <Bram@vim.org>
parents: 21765
diff changeset
339
26642
7fe649a64777 patch 8.2.3850: illegal memory access when displaying a partial
Bram Moolenaar <Bram@vim.org>
parents: 24134
diff changeset
340 " this was missing a terminating NUL
7fe649a64777 patch 8.2.3850: illegal memory access when displaying a partial
Bram Moolenaar <Bram@vim.org>
parents: 24134
diff changeset
341 func Test_echo_string_partial()
7fe649a64777 patch 8.2.3850: illegal memory access when displaying a partial
Bram Moolenaar <Bram@vim.org>
parents: 24134
diff changeset
342 function CountSpaces()
7fe649a64777 patch 8.2.3850: illegal memory access when displaying a partial
Bram Moolenaar <Bram@vim.org>
parents: 24134
diff changeset
343 endfunction
26652
a3f38923c037 patch 8.2.3855: illegal memory access when displaying a blob
Bram Moolenaar <Bram@vim.org>
parents: 26642
diff changeset
344 call assert_equal("function('CountSpaces', [{'ccccccccccc': ['ab', 'cd'], 'aaaaaaaaaaa': v:false, 'bbbbbbbbbbbb': ''}])", string(function('CountSpaces', [#{aaaaaaaaaaa: v:false, bbbbbbbbbbbb: '', ccccccccccc: ['ab', 'cd']}])))
26642
7fe649a64777 patch 8.2.3850: illegal memory access when displaying a partial
Bram Moolenaar <Bram@vim.org>
parents: 24134
diff changeset
345 endfunc
7fe649a64777 patch 8.2.3850: illegal memory access when displaying a partial
Bram Moolenaar <Bram@vim.org>
parents: 24134
diff changeset
346
27255
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
347 " Message output was previously overwritten by the fileinfo display, shown
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
348 " when switching buffers. If a buffer is switched to, then a message if
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
349 " echoed, we should show the message, rather than overwriting it with
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
350 " fileinfo.
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
351 func Test_fileinfo_after_echo()
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
352 CheckScreendump
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
353
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
354 let content =<< trim END
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
355 file a.txt
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
356
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
357 hide edit b.txt
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
358 call setline(1, "hi")
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
359 setlocal modified
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
360
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
361 hide buffer a.txt
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
362
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
363 set updatetime=1
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
364 autocmd CursorHold * b b.txt | w | echo "'b' written"
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
365 END
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
366
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
367 call writefile(content, 'Xtest_fileinfo_after_echo')
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
368 let buf = RunVimInTerminal('-S Xtest_fileinfo_after_echo', #{rows: 6})
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
369 call VerifyScreenDump(buf, 'Test_fileinfo_after_echo', {})
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
370
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
371 call term_sendkeys(buf, ":q\<CR>")
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
372
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
373 " clean up
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
374 call StopVimInTerminal(buf)
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
375 call delete('Xtest_fileinfo_after_echo')
27344
44e82999b4e1 patch 8.2.4200: some tests do not clean up properly
Bram Moolenaar <Bram@vim.org>
parents: 27255
diff changeset
376 call delete('b.txt')
27255
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
377 endfunc
8c43e3d1a6e5 patch 8.2.4156: fileinfo message overwrites echo'ed message
Bram Moolenaar <Bram@vim.org>
parents: 26652
diff changeset
378
20158
94f05de75e9f patch 8.2.0634: crash with null partial and blob
Bram Moolenaar <Bram@vim.org>
parents: 20126
diff changeset
379 " vim: shiftwidth=2 sts=2 expandtab