diff options
| author | James McCoy <jamessan@jamessan.com> | 2020-07-31 17:59:48 -0400 |
|---|---|---|
| committer | James McCoy <jamessan@jamessan.com> | 2020-07-31 17:59:48 -0400 |
| commit | 228d7d948200563292f13723cdd0f947bd0c711c (patch) | |
| tree | e30ac7afb5cfc68470be42e8c5e02907fb44b99b /src/nvim/testdir/test_plus_arg_edit.vim | |
| parent | 3e3002b90c46fca8d8d5edebc021e56d95c5e645 (diff) | |
| parent | 1153ac9036ab62ee25078248a01dc56a2311b9a6 (diff) | |
| download | rneovim-228d7d948200563292f13723cdd0f947bd0c711c.tar.gz rneovim-228d7d948200563292f13723cdd0f947bd0c711c.tar.bz2 rneovim-228d7d948200563292f13723cdd0f947bd0c711c.zip | |
Merge remote-tracking branch 'upstream/master' into fileinfo-garbage
Diffstat (limited to 'src/nvim/testdir/test_plus_arg_edit.vim')
| -rw-r--r-- | src/nvim/testdir/test_plus_arg_edit.vim | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/nvim/testdir/test_plus_arg_edit.vim b/src/nvim/testdir/test_plus_arg_edit.vim index f6d31e7626..e91a6e467a 100644 --- a/src/nvim/testdir/test_plus_arg_edit.vim +++ b/src/nvim/testdir/test_plus_arg_edit.vim @@ -8,3 +8,31 @@ function Test_edit() call delete('Xfile1') call delete('Xfile2') endfunction + +func Test_edit_bad() + if !has('multi_byte') + finish + endif + + " Test loading a utf8 file with bad utf8 sequences. + call writefile(["[\xff][\xc0][\xe2\x89\xf0][\xc2\xc2]"], "Xfile") + new + + " Without ++bad=..., the default behavior is like ++bad=? + e! ++enc=utf8 Xfile + call assert_equal('[?][?][???][??]', getline(1)) + + e! ++enc=utf8 ++bad=_ Xfile + call assert_equal('[_][_][___][__]', getline(1)) + + e! ++enc=utf8 ++bad=drop Xfile + call assert_equal('[][][][]', getline(1)) + + e! ++enc=utf8 ++bad=keep Xfile + call assert_equal("[\xff][\xc0][\xe2\x89\xf0][\xc2\xc2]", getline(1)) + + call assert_fails('e! ++enc=utf8 ++bad=foo Xfile', 'E474:') + + bw! + call delete('Xfile') +endfunc |