view src/testdir/test_reltime.vim @ 12375:ab0d827151a1 v8.0.1067

patch 8.0.1067: try/catch in timer does not prevent it from being stopped commit https://github.com/vim/vim/commit/e723c42836d971180d1bf9f98916966c5543fff1 Author: Bram Moolenaar <Bram@vim.org> Date: Wed Sep 6 23:40:10 2017 +0200 patch 8.0.1067: try/catch in timer does not prevent it from being stopped Problem: Using try/catch in timer does not prevent it from being stopped. Solution: Reset the exception context and use did_emsg instead of called_emsg.
author Christian Brabandt <cb@256bit.org>
date Wed, 06 Sep 2017 23:45:04 +0200
parents ea504064c996
children f38fcbf343ce
line wrap: on
line source

" Tests for reltime()

if !has('reltime') || !has('float')
  finish
endif

func Test_reltime()
  let now = reltime()
  sleep 10m
  let later = reltime()
  let elapsed = reltime(now)
  call assert_true(reltimestr(elapsed) =~ '0\.0')
  call assert_true(reltimestr(elapsed) != '0.0')
  call assert_true(reltimefloat(elapsed) < 0.1)
  call assert_true(reltimefloat(elapsed) > 0.0)

  let same = reltime(now, now)
  call assert_equal('0.000', split(reltimestr(same))[0][:4])
  call assert_equal(0.0, reltimefloat(same))

  let differs = reltime(now, later)
  call assert_true(reltimestr(differs) =~ '0\.0')
  call assert_true(reltimestr(differs) != '0.0')
  call assert_true(reltimefloat(differs) < 0.1)
  call assert_true(reltimefloat(differs) > 0.0)
endfunc