blob: ffd2dfa32f9ed9893b5e54440fc4c0ca0648a29e [file] [log] [blame]
Bram Moolenaar076e5022017-01-24 18:58:30 +01001" Tests for bracketed paste.
2
3" Bracketed paste only works with "xterm".
4set term=xterm
5
6func Test_paste_normal_mode()
7 new
8 call setline(1, ['a', 'b', 'c'])
9 2
10 call feedkeys("\<Esc>[200~foo\<CR>bar\<Esc>[201~", 'xt')
11 call assert_equal('bfoo', getline(2))
12 call assert_equal('bar', getline(3))
13 call assert_equal('c', getline(4))
14
15 normal .
16 call assert_equal('barfoo', getline(3))
17 call assert_equal('bar', getline(4))
18 call assert_equal('c', getline(5))
19 bwipe!
20endfunc
21
22func Test_paste_insert_mode()
23 new
24 call setline(1, ['a', 'b', 'c'])
25 2
26 call feedkeys("i\<Esc>[200~foo\<CR>bar\<Esc>[201~ done\<Esc>", 'xt')
27 call assert_equal('foo', getline(2))
28 call assert_equal('bar doneb', getline(3))
29 call assert_equal('c', getline(4))
30
31 normal .
32 call assert_equal('bar donfoo', getline(3))
33 call assert_equal('bar doneeb', getline(4))
34 call assert_equal('c', getline(5))
35 bwipe!
36endfunc
37
38func Test_paste_cmdline()
39 call feedkeys(":a\<Esc>[200~foo\<CR>bar\<Esc>[201~b\<Home>\"\<CR>", 'xt')
40 call assert_equal("\"afoo\<CR>barb", getreg(':'))
41endfunc