reltimefloat(): allow negative result #10544

For "backwards" duration, reltimefloat() should return negative value
like its counterpart reltimestr().

ref bab24a88ab
ref 06af88cd72
ref #10521
fix #10452
This commit is contained in:
Justin M. Keyes
2019-07-20 10:46:09 +02:00
committed by GitHub
parent afef973262
commit f55c1e4233
3 changed files with 13 additions and 16 deletions

View File

@@ -6,7 +6,7 @@ local reltime, reltimestr, reltimefloat = funcs.reltime, funcs.reltimestr, funcs
describe('reltimestr(), reltimefloat()', function()
before_each(clear)
it('Checks', function()
it('acceptance', function()
local now = reltime()
command('sleep 10m')
local later = reltime()
@@ -31,20 +31,23 @@ describe('reltimestr(), reltimefloat()', function()
-- original vim test for < 0.1, but easily fails on travis
ok(nil ~= string.match(reltimestr(differs), "0%."))
ok(reltimefloat(differs) < 1.0)
end)
it('reltime() allows negative result #10452', function()
it('(start - end) returns negative #10452', function()
local older_time = reltime()
command('sleep 1m')
local newer_time = reltime()
-- Start/end swapped: should be something like -0.002123.
local rv = tonumber(reltimestr(reltime(newer_time, older_time)))
ok(rv < 0 and rv > -10)
local tm_s = tonumber(reltimestr(reltime(newer_time, older_time)))
local tm_f = reltimefloat(reltime(newer_time, older_time))
ok(tm_s < 0 and tm_s > -10)
ok(tm_f < 0 and tm_f > -10)
-- Not swapped: should be something like 0.002123.
rv = tonumber(reltimestr(reltime(older_time, newer_time)))
ok(rv > 0 and rv < 10)
tm_s = tonumber(reltimestr(reltime(older_time, newer_time)))
tm_f = reltimefloat(reltime(older_time, newer_time))
ok(tm_s > 0 and tm_s < 10)
ok(tm_f > 0 and tm_f < 10)
end)
end)