summaryrefslogtreecommitdiffstats
path: root/src/testdir/test_expand_func.vim
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-06 02:44:24 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-06 02:44:24 +0000
commit8baab3c8d7a6f22888bd581cd5c6098fd2e4b5a8 (patch)
tree3537e168b860f2742f6029d70501b5ed7d15d345 /src/testdir/test_expand_func.vim
parentInitial commit. (diff)
downloadvim-upstream.tar.xz
vim-upstream.zip
Adding upstream version 2:8.1.0875.upstream/2%8.1.0875upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/testdir/test_expand_func.vim')
-rw-r--r--src/testdir/test_expand_func.vim66
1 files changed, 66 insertions, 0 deletions
diff --git a/src/testdir/test_expand_func.vim b/src/testdir/test_expand_func.vim
new file mode 100644
index 0000000..fb29c3e
--- /dev/null
+++ b/src/testdir/test_expand_func.vim
@@ -0,0 +1,66 @@
+" Tests for expand()
+
+let s:sfile = expand('<sfile>')
+let s:slnum = str2nr(expand('<slnum>'))
+let s:sflnum = str2nr(expand('<sflnum>'))
+
+func s:expand_sfile()
+ return expand('<sfile>')
+endfunc
+
+func s:expand_slnum()
+ return str2nr(expand('<slnum>'))
+endfunc
+
+func s:expand_sflnum()
+ return str2nr(expand('<sflnum>'))
+endfunc
+
+func Test_expand_sfile()
+ call assert_match('test_expand_func\.vim$', s:sfile)
+ call assert_match('^function .*\.\.Test_expand_sfile$', expand('<sfile>'))
+
+ " Call in script-local function
+ call assert_match('^function .*\.\.Test_expand_sfile\[5\]\.\.<SNR>\d\+_expand_sfile$', s:expand_sfile())
+
+ " Call in command
+ command Sfile echo expand('<sfile>')
+ call assert_match('^function .*\.\.Test_expand_sfile$', trim(execute('Sfile')))
+ delcommand Sfile
+endfunc
+
+func Test_expand_slnum()
+ call assert_equal(4, s:slnum)
+ call assert_equal(2, str2nr(expand('<slnum>')))
+
+ " Line-continuation
+ call assert_equal(
+ \ 5,
+ \ str2nr(expand('<slnum>')))
+
+ " Call in script-local function
+ call assert_equal(1, s:expand_slnum())
+
+ " Call in command
+ command Slnum echo expand('<slnum>')
+ call assert_equal(14, str2nr(trim(execute('Slnum'))))
+ delcommand Slnum
+endfunc
+
+func Test_expand_sflnum()
+ call assert_equal(5, s:sflnum)
+ call assert_equal(52, str2nr(expand('<sflnum>')))
+
+ " Line-continuation
+ call assert_equal(
+ \ 55,
+ \ str2nr(expand('<sflnum>')))
+
+ " Call in script-local function
+ call assert_equal(16, s:expand_sflnum())
+
+ " Call in command
+ command Flnum echo expand('<sflnum>')
+ call assert_equal(64, str2nr(trim(execute('Flnum'))))
+ delcommand Flnum
+endfunc