summaryrefslogtreecommitdiffstats
path: root/src/testdir/test_sleep.vim
diff options
context:
space:
mode:
Diffstat (limited to 'src/testdir/test_sleep.vim')
-rw-r--r--src/testdir/test_sleep.vim23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/testdir/test_sleep.vim b/src/testdir/test_sleep.vim
new file mode 100644
index 0000000..4326877
--- /dev/null
+++ b/src/testdir/test_sleep.vim
@@ -0,0 +1,23 @@
+" Test for sleep and sleep! commands
+
+func! s:get_time_ms()
+ return float2nr(reltimefloat(reltime()) * 1000)
+endfunc
+
+func! s:assert_takes_longer(cmd, time_ms)
+ let start = s:get_time_ms()
+ execute a:cmd
+ let end = s:get_time_ms()
+ call assert_true(end - start >=# a:time_ms)
+endfun
+
+func! Test_sleep_bang()
+ call s:assert_takes_longer('sleep 50m', 50)
+ call s:assert_takes_longer('sleep! 50m', 50)
+ call s:assert_takes_longer('sl 50m', 50)
+ call s:assert_takes_longer('sl! 50m', 50)
+ call s:assert_takes_longer('1sleep', 1000)
+ call s:assert_takes_longer('normal 1gs', 1000)
+endfunc
+
+" vim: shiftwidth=2 sts=2 expandtab