Mercurial > vim
view src/testdir/test_cd.vim @ 15284:c31e4b1fa4fd v8.1.0650
patch 8.1.0650: command line argument -q [errorfile] is not tested
commit https://github.com/vim/vim/commit/54948183d210f5117271bb5710752da24054fade
Author: Bram Moolenaar <Bram@vim.org>
Date: Fri Dec 28 18:32:56 2018 +0100
patch 8.1.0650: command line argument -q [errorfile] is not tested
Problem: Command line argument -q [errorfile] is not tested.
Solution: Add a test. (Dominique Pelle, closes https://github.com/vim/vim/issues/3730)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 28 Dec 2018 18:45:05 +0100 |
parents | a1d21fc6e457 |
children | bcc343175103 |
line wrap: on
line source
" Test for :cd func Test_cd_large_path() " This used to crash with a heap write overflow. call assert_fails('cd ' . repeat('x', 5000), 'E472:') endfunc func Test_cd_up_and_down() let path = getcwd() cd .. call assert_notequal(path, getcwd()) exe 'cd ' . path call assert_equal(path, getcwd()) endfunc func Test_cd_no_arg() if has('unix') " Test that cd without argument goes to $HOME directory on Unix systems. let path = getcwd() cd call assert_equal($HOME, getcwd()) call assert_notequal(path, getcwd()) exe 'cd ' . path call assert_equal(path, getcwd()) else " Test that cd without argument echoes cwd on non-Unix systems. call assert_match(getcwd(), execute('cd')) endif endfunc func Test_cd_minus() " Test the :cd - goes back to the previous directory. let path = getcwd() cd .. let path_dotdot = getcwd() call assert_notequal(path, path_dotdot) cd - call assert_equal(path, getcwd()) cd - call assert_equal(path_dotdot, getcwd()) cd - call assert_equal(path, getcwd()) endfunc func Test_cd_with_cpo_chdir() e Xfoo call setline(1, 'foo') let path = getcwd() set cpo+=. " :cd should fail when buffer is modified and 'cpo' contains dot. call assert_fails('cd ..', 'E747:') call assert_equal(path, getcwd()) " :cd with exclamation mark should succeed. cd! .. call assert_notequal(path, getcwd()) " :cd should succeed when buffer has been written. w! exe 'cd ' . path call assert_equal(path, getcwd()) call delete('Xfoo') set cpo& bw! endfunc