Skip to content

Commit 610cc1b

Browse files
committed
patch 7.4.1652
Problem: Old style test for fnamemodify(). Solution: Turn it into a new style test.
1 parent 780d4c3 commit 610cc1b

File tree

6 files changed

+46
-79
lines changed

6 files changed

+46
-79
lines changed

src/testdir/Make_all.mak

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,6 @@ SCRIPTS_ALL = \
8585
test102.out \
8686
test103.out \
8787
test104.out \
88-
test105.out \
8988
test107.out \
9089
test108.out \
9190
test_autocmd_option.out \

src/testdir/test105.in

Lines changed: 0 additions & 47 deletions
This file was deleted.

src/testdir/test105.ok

Lines changed: 0 additions & 31 deletions
This file was deleted.

src/testdir/test_alot.vim

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ source test_ex_undo.vim
88
source test_expr.vim
99
source test_expand.vim
1010
source test_feedkeys.vim
11+
source test_fnamemodify.vim
1112
source test_file_perm.vim
1213
source test_glob2regpat.vim
1314
source test_help_tagjump.vim

src/testdir/test_fnamemodify.vim

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
" Test filename modifiers.
2+
3+
func Test_fnamemodify()
4+
let $HOME = fnamemodify('.', ':p:h:h')
5+
set shell=sh
6+
7+
call assert_equal('/', fnamemodify('.', ':p')[-1:])
8+
call assert_equal('r', fnamemodify('.', ':p:h')[-1:])
9+
call assert_equal('t', fnamemodify('test.out', ':p')[-1:])
10+
call assert_equal('test.out', fnamemodify('test.out', ':.'))
11+
call assert_equal('a', fnamemodify('../testdir/a', ':.'))
12+
call assert_equal('~/testdir/test.out', fnamemodify('test.out', ':~'))
13+
call assert_equal('~/testdir/a', fnamemodify('../testdir/a', ':~'))
14+
call assert_equal('a', fnamemodify('../testdir/a', ':t'))
15+
call assert_equal('', fnamemodify('.', ':p:t'))
16+
call assert_equal('test.out', fnamemodify('test.out', ':p:t'))
17+
call assert_equal('out', fnamemodify('test.out', ':p:e'))
18+
call assert_equal('out', fnamemodify('test.out', ':p:t:e'))
19+
call assert_equal('abc.fb2.tar', fnamemodify('abc.fb2.tar.gz', ':r'))
20+
call assert_equal('abc.fb2', fnamemodify('abc.fb2.tar.gz', ':r:r'))
21+
call assert_equal('abc', fnamemodify('abc.fb2.tar.gz', ':r:r:r'))
22+
call assert_equal('testdir/abc.fb2', substitute(fnamemodify('abc.fb2.tar.gz', ':p:r:r'), '.*\(testdir/.*\)', '\1', ''))
23+
call assert_equal('gz', fnamemodify('abc.fb2.tar.gz', ':e'))
24+
call assert_equal('tar.gz', fnamemodify('abc.fb2.tar.gz', ':e:e'))
25+
call assert_equal('fb2.tar.gz', fnamemodify('abc.fb2.tar.gz', ':e:e:e'))
26+
call assert_equal('fb2.tar.gz', fnamemodify('abc.fb2.tar.gz', ':e:e:e:e'))
27+
call assert_equal('tar', fnamemodify('abc.fb2.tar.gz', ':e:e:r'))
28+
29+
call assert_equal('''abc def''', fnamemodify('abc def', ':S'))
30+
call assert_equal('''abc" "def''', fnamemodify('abc" "def', ':S'))
31+
call assert_equal('''abc"%"def''', fnamemodify('abc"%"def', ':S'))
32+
call assert_equal('''abc''\'''' ''\''''def''', fnamemodify('abc'' ''def', ':S'))
33+
call assert_equal('''abc''\''''%''\''''def''', fnamemodify('abc''%''def', ':S'))
34+
call assert_equal(expand('%:r:S'), shellescape(expand('%:r')))
35+
sp test_alot.vim
36+
call assert_equal('test_alot,''test_alot'',test_alot.vim', join([expand('%:r'), expand('%:r:S'), expand('%')], ','))
37+
quit
38+
39+
call assert_equal("'abc\ndef'", fnamemodify("abc\ndef", ':S'))
40+
set shell=tcsh
41+
call assert_equal("'abc\\\ndef'", fnamemodify("abc\ndef", ':S'))
42+
set shell&
43+
endfunc

src/version.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -748,6 +748,8 @@ static char *(features[]) =
748748

749749
static int included_patches[] =
750750
{ /* Add new patch number below this line */
751+
/**/
752+
1652,
751753
/**/
752754
1651,
753755
/**/

0 commit comments

Comments
 (0)