Last change
on this file was 2036, checked in by bird, 20 years ago |
Initial revision
|
-
Property cvs2svn:cvs-rev
set to
1.1
-
Property svn:eol-style
set to
native
-
Property svn:executable
set to
*
-
Property svn:keywords
set to
Author Date Id Revision
|
File size:
1020 bytes
|
Line | |
---|
1 | #include <stdlib.h>
|
---|
2 | #include <time.h>
|
---|
3 | #include <string.h>
|
---|
4 | #include <stdio.h>
|
---|
5 |
|
---|
6 | struct {
|
---|
7 | const char * env;
|
---|
8 | time_t expected;
|
---|
9 | } tests[] = {
|
---|
10 | {"MST", 832935315},
|
---|
11 | {"", 832910115},
|
---|
12 | {":UTC", 832910115},
|
---|
13 | {"UTC", 832910115},
|
---|
14 | {"UTC0", 832910115}
|
---|
15 | };
|
---|
16 |
|
---|
17 |
|
---|
18 | int
|
---|
19 | main (int argc, char ** argv)
|
---|
20 | {
|
---|
21 | int errors = 0;
|
---|
22 | struct tm tm;
|
---|
23 | time_t t;
|
---|
24 | unsigned int i;
|
---|
25 |
|
---|
26 | memset (&tm, 0, sizeof (tm));
|
---|
27 | tm.tm_isdst = 0;
|
---|
28 | tm.tm_year = 96; /* years since 1900 */
|
---|
29 | tm.tm_mon = 4;
|
---|
30 | tm.tm_mday = 24;
|
---|
31 | tm.tm_hour = 3;
|
---|
32 | tm.tm_min = 55;
|
---|
33 | tm.tm_sec = 15;
|
---|
34 |
|
---|
35 | for (i = 0; i < sizeof (tests) / sizeof (tests[0]); ++i)
|
---|
36 | {
|
---|
37 | setenv ("TZ", tests[i].env, 1);
|
---|
38 | t = mktime (&tm);
|
---|
39 | if (t != tests[i].expected)
|
---|
40 | {
|
---|
41 | printf ("%s: flunked test %u (expected %lu, got %lu)\n",
|
---|
42 | argv[0], i, (long) tests[i].expected, (long) t);
|
---|
43 | ++errors;
|
---|
44 | }
|
---|
45 | }
|
---|
46 | if (errors == 0)
|
---|
47 | {
|
---|
48 | puts ("No errors.");
|
---|
49 | return EXIT_SUCCESS;
|
---|
50 | }
|
---|
51 | else
|
---|
52 | {
|
---|
53 | printf ("%d errors.\n", errors);
|
---|
54 | return EXIT_FAILURE;
|
---|
55 | }
|
---|
56 | }
|
---|
Note:
See
TracBrowser
for help on using the repository browser.