annotate src/testdir/test_plus_arg_edit.vim @ 14051:c1ead25ed819 v8.1.0043

patch 8.1.0043: ++bad argument of :edit does not work properly commit https://github.com/vim/vim/commit/7580849df9d6c7c515f5ed784019336d8a8ec0f0 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Jun 12 12:39:41 2018 +0200 patch 8.1.0043: ++bad argument of :edit does not work properly Problem: ++bad argument of :edit does not work properly. Solution: Return FAIL from get_bad_opt() only when there is no valid argument. (Dominique Pelle, Christian Brabandt, closes #2966, closes #2947)
author Christian Brabandt <cb@256bit.org>
date Tue, 12 Jun 2018 12:45:07 +0200
parents 9e04de2aa738
children 2dcaa860e3fc
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11651
140d51d5b5c3 patch 8.0.0708: some tests are old style
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1 " Tests for complicated + argument to :edit command
140d51d5b5c3 patch 8.0.0708: some tests are old style
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2 function Test_edit()
14051
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
3 call writefile(["foo|bar"], "Xfile1")
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
4 call writefile(["foo/bar"], "Xfile2")
11651
140d51d5b5c3 patch 8.0.0708: some tests are old style
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
5 edit +1|s/|/PIPE/|w Xfile1| e Xfile2|1 | s/\//SLASH/|w
140d51d5b5c3 patch 8.0.0708: some tests are old style
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
6 call assert_equal(["fooPIPEbar"], readfile("Xfile1"))
140d51d5b5c3 patch 8.0.0708: some tests are old style
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
7 call assert_equal(["fooSLASHbar"], readfile("Xfile2"))
12899
9e04de2aa738 patch 8.0.1326: largefile test fails on CI, glob test on MS-Windows
Christian Brabandt <cb@256bit.org>
parents: 11651
diff changeset
8 call delete('Xfile1')
9e04de2aa738 patch 8.0.1326: largefile test fails on CI, glob test on MS-Windows
Christian Brabandt <cb@256bit.org>
parents: 11651
diff changeset
9 call delete('Xfile2')
11651
140d51d5b5c3 patch 8.0.0708: some tests are old style
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
10 endfunction
14051
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
11
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
12 func Test_edit_bad()
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
13 if !has('multi_byte')
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
14 finish
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
15 endif
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
16
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
17 " Test loading a utf8 file with bad utf8 sequences.
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
18 call writefile(["[\xff][\xc0][\xe2\x89\xf0][\xc2\xc2]"], "Xfile")
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
19 new
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
20
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
21 " Without ++bad=..., the default behavior is like ++bad=?
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
22 e! ++enc=utf8 Xfile
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
23 call assert_equal('[?][?][???][??]', getline(1))
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
24
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
25 e! ++enc=utf8 ++bad=_ Xfile
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
26 call assert_equal('[_][_][___][__]', getline(1))
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
27
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
28 e! ++enc=utf8 ++bad=drop Xfile
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
29 call assert_equal('[][][][]', getline(1))
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
30
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
31 e! ++enc=utf8 ++bad=keep Xfile
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
32 call assert_equal("[\xff][\xc0][\xe2\x89\xf0][\xc2\xc2]", getline(1))
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
33
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
34 call assert_fails('e! ++enc=utf8 ++bad=foo Xfile', 'E474:')
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
35
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
36 bw!
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
37 call delete('Xfile')
c1ead25ed819 patch 8.1.0043: ++bad argument of :edit does not work properly
Christian Brabandt <cb@256bit.org>
parents: 12899
diff changeset
38 endfunc