mirror of
https://github.com/cc65/cc65.git
synced 2025-01-29 21:31:53 +00:00
Added test for mktime() and gmtime().
A recent regression makes gmtime()/localtime() fail. So it's obviously desirable to have a test for that code.
This commit is contained in:
parent
eeb1b927ce
commit
b04028b5d8
36
test/val/time.c
Normal file
36
test/val/time.c
Normal file
@ -0,0 +1,36 @@
|
||||
#include <time.h>
|
||||
#include <stdio.h>
|
||||
|
||||
int main(void)
|
||||
{
|
||||
int failures = 0;
|
||||
|
||||
struct tm timeinfo;
|
||||
time_t rawtime;
|
||||
struct tm *p_timeinfo;
|
||||
|
||||
timeinfo.tm_year = 2020 - 1900;
|
||||
timeinfo.tm_mon = 12 - 1;
|
||||
timeinfo.tm_mday = 24;
|
||||
timeinfo.tm_hour = 10;
|
||||
timeinfo.tm_min = 30;
|
||||
timeinfo.tm_sec = 50;
|
||||
timeinfo.tm_isdst = 0;
|
||||
|
||||
rawtime = mktime(&timeinfo);
|
||||
|
||||
failures += !(rawtime == 1608805850);
|
||||
|
||||
p_timeinfo = gmtime(&rawtime);
|
||||
|
||||
failures += !(p_timeinfo->tm_year == timeinfo.tm_year);
|
||||
failures += !(p_timeinfo->tm_mon == timeinfo.tm_mon);
|
||||
failures += !(p_timeinfo->tm_mday == timeinfo.tm_mday);
|
||||
failures += !(p_timeinfo->tm_hour == timeinfo.tm_hour);
|
||||
failures += !(p_timeinfo->tm_min == timeinfo.tm_min);
|
||||
failures += !(p_timeinfo->tm_sec == timeinfo.tm_sec);
|
||||
|
||||
printf("%lu\n%s%d\n", rawtime, asctime(p_timeinfo), failures);
|
||||
|
||||
return failures;
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user