blob: e69e7e1b31c14f5a4b8724108acc89cbea1bf252 [file] [log] [blame]
Bram Moolenaara6e42502016-04-20 16:19:52 +02001scriptencoding utf-8
2
3func s:test_expand_dllpath(optname)
4 let $TEST_EXPAND_DLLPATH = '/dllpath/lib' . substitute(a:optname, '\zedll$', '.', '')
5 execute 'let dllpath_save = &' . a:optname
6 try
7 execute 'set ' . a:optname . '=$TEST_EXPAND_DLLPATH'
8 execute 'call assert_equal("' . $TEST_EXPAND_DLLPATH . '", &' . a:optname . ')'
9
10 execute 'set ' . a:optname . '=~' . $TEST_EXPAND_DLLPATH
11 execute 'call assert_equal("' . $HOME . $TEST_EXPAND_DLLPATH . '", &' . a:optname . ')'
12 finally
13 execute 'let &' . a:optname . ' = dllpath_save'
14 let $TEST_EXPAND_DLLPATH = ''
15 endtry
16endfunc
17
18func s:generate_test_if_exists(optname)
19 if exists('&' . a:optname)
20 execute join([
21 \ 'func Test_expand_' . a:optname . '()',
22 \ ' call s:test_expand_dllpath("' . a:optname . '")',
23 \ 'endfunc'
24 \ ], "\n")
25 endif
26endfunc
27
28call s:generate_test_if_exists('luadll')
29call s:generate_test_if_exists('perldll')
30call s:generate_test_if_exists('pythondll')
31call s:generate_test_if_exists('pythonthreedll')
32call s:generate_test_if_exists('rubydll')
33call s:generate_test_if_exists('tcldll')