lua

A copy of the Lua development repository
Log | Files | Refs | README

commit 0f028b9008097f00aa3953a3425c72e7ae2b4c98
parent 65d1aa7a779b30bf5b0e7b968b3980b702b08b2c
Author: Roberto Ierusalimschy <roberto@inf.puc-rio.br>
Date:   Tue,  9 Apr 2019 18:43:46 -0300

Corrected tests around non-portable 'isdst' in dates

The field 'isdst' in date tables may not be present; portable tests
should not assume it is.

Diffstat:
Mtestes/files.lua | 10+++++++---
1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/testes/files.lua b/testes/files.lua @@ -777,7 +777,7 @@ local t = os.time() D = os.date("*t", t) load(os.date([[assert(D.year==%Y and D.month==%m and D.day==%d and D.hour==%H and D.min==%M and D.sec==%S and - D.wday==%w+1 and D.yday==%j and type(D.isdst) == 'boolean')]], t))() + D.wday==%w+1 and D.yday==%j)]], t))() checkerr("invalid conversion specifier", os.date, "%") checkerr("invalid conversion specifier", os.date, "%9") @@ -827,12 +827,16 @@ end D = os.date("!*t", t) load(os.date([[!assert(D.year==%Y and D.month==%m and D.day==%d and D.hour==%H and D.min==%M and D.sec==%S and - D.wday==%w+1 and D.yday==%j and type(D.isdst) == 'boolean')]], t))() + D.wday==%w+1 and D.yday==%j)]], t))() do local D = os.date("*t") local t = os.time(D) - assert(type(D.isdst) == 'boolean') + if not D.isdst then + print("no daylight saving information") + else + assert(type(D.isdst) == 'boolean') + end D.isdst = nil local t1 = os.time(D) assert(t == t1) -- if isdst is absent uses correct default