view src/testdir/test_reltime.vim @ 9003:072556995a8e v7.4.1787

commit https://github.com/vim/vim/commit/b2658a1ab02cd0ba848164f70c7c464fdc398162 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Apr 26 17:16:24 2016 +0200 patch 7.4.1787 Problem: When a job ends the close callback is invoked before other callbacks. On Windows the close callback is not called. Solution: First invoke out/err callbacks before the close callback. Make the close callback work on Windows.
author Christian Brabandt <cb@256bit.org>
date Tue, 26 Apr 2016 17:30:05 +0200
parents a5f1bdd2007b
children ea504064c996
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