mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2025-02-25 07:07:52 +01:00
Improve coverage in time-related unit tests
This commit is contained in:
parent
a3679d30c0
commit
03258529d8
1 changed files with 29 additions and 1 deletions
|
@ -67,6 +67,15 @@ test_util_time(void)
|
|||
a_time.tm_mon = 1; /* Try a leap year, in feb. */
|
||||
a_time.tm_mday = 10;
|
||||
test_eq((time_t) 1076393695UL, tor_timegm(&a_time));
|
||||
a_time.tm_mon = 0;
|
||||
a_time.tm_mday = 10;
|
||||
test_eq((time_t) 1073715295UL, tor_timegm(&a_time));
|
||||
a_time.tm_mon = 12; /* Wrong month, it's 0-based */
|
||||
a_time.tm_mday = 10;
|
||||
test_eq((time_t) -1, tor_timegm(&a_time));
|
||||
a_time.tm_mon = -1; /* Wrong month */
|
||||
a_time.tm_mday = 10;
|
||||
test_eq((time_t) -1, tor_timegm(&a_time));
|
||||
|
||||
|
||||
/* Test {format,parse}_rfc1123_time */
|
||||
|
@ -78,9 +87,28 @@ test_util_time(void)
|
|||
|
||||
t_res = 0;
|
||||
i = parse_rfc1123_time(timestr, &t_res);
|
||||
test_eq(i,0);
|
||||
test_eq(0,i);
|
||||
test_eq(t_res, (time_t)1091580502UL);
|
||||
/* The timezone doesn't matter */
|
||||
t_res = 0;
|
||||
test_eq(0, parse_rfc1123_time("Wed, 04 Aug 2004 00:48:22 ZUL", &t_res));
|
||||
test_eq(t_res, (time_t)1091580502UL);
|
||||
test_eq(-1, parse_rfc1123_time("Wed, zz Aug 2004 99-99x99 GMT", &t_res));
|
||||
test_eq(-1, parse_rfc1123_time("Wed, 32 Mar 2011 00:00:00 GMT", &t_res));
|
||||
test_eq(-1, parse_rfc1123_time("Wed, 30 Mar 2011 24:00:00 GMT", &t_res));
|
||||
test_eq(-1, parse_rfc1123_time("Wed, 30 Mar 2011 23:60:00 GMT", &t_res));
|
||||
test_eq(-1, parse_rfc1123_time("Wed, 30 Mar 2011 23:59:62 GMT", &t_res));
|
||||
test_eq(-1, parse_rfc1123_time("Wed, 30 Mar 1969 23:59:59 GMT", &t_res));
|
||||
test_eq(-1, parse_rfc1123_time("Wed, 30 Ene 2011 23:59:59 GMT", &t_res));
|
||||
test_eq(-1, parse_rfc1123_time("Wed, 30 Mar 2011 23:59:59 GM", &t_res));
|
||||
|
||||
#if 0
|
||||
/* This fails, I imagine it's important and should be fixed? */
|
||||
test_eq(-1, parse_rfc1123_time("Wed, 29 Feb 2011 16:00:00 GMT", &t_res));
|
||||
/* Why is this string valid (ie. the test fails because it doesn't
|
||||
return -1)? */
|
||||
test_eq(-1, parse_rfc1123_time("Wed, 30 Mar 2011 23:59:61 GMT", &t_res));
|
||||
#endif
|
||||
|
||||
|
||||
/* Test tor_gettimeofday */
|
||||
|
|
Loading…
Add table
Reference in a new issue