summaryrefslogtreecommitdiff
path: root/src/testdir/test_sleep.vim
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2021-01-16 20:21:23 +0100
committerBram Moolenaar <Bram@vim.org>2021-01-16 20:21:23 +0100
commite2edc2ed4a9a229870b1e1811b0ecf045b84e429 (patch)
tree52eb7e738360094d273506de9f81427de4ff0913 /src/testdir/test_sleep.vim
parent70250fb4d2ffc2e92db224c6374db418f70691fd (diff)
downloadvim-git-e2edc2ed4a9a229870b1e1811b0ecf045b84e429.tar.gz
patch 8.2.2366: when using ":sleep" the cursor is always displayedv8.2.2366
Problem: When using ":sleep" the cursor is always displayed. Solution: Do not display the cursor when using ":sleep!". (Jeremy Lerner, closes #7688)
Diffstat (limited to 'src/testdir/test_sleep.vim')
-rw-r--r--src/testdir/test_sleep.vim26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/testdir/test_sleep.vim b/src/testdir/test_sleep.vim
new file mode 100644
index 000000000..f71855fd4
--- /dev/null
+++ b/src/testdir/test_sleep.vim
@@ -0,0 +1,26 @@
+" Test for sleep and sleep! commands
+
+func! s:get_time_ms()
+ let timestr = reltimestr(reltime())
+ let dotidx = stridx(timestr, '.')
+ let sec = str2nr(timestr[:dotidx])
+ let msec = str2nr(timestr[dotidx + 1:])
+ return (sec * 1000) + (msec / 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)
+endfunc
+
+" vim: shiftwidth=2 sts=2 expandtab