summaryrefslogtreecommitdiff
path: root/misc-utils/cal.c
diff options
context:
space:
mode:
authorKarel Zak <kzak@redhat.com>2007-07-10 23:20:42 +0200
committerKarel Zak <kzak@redhat.com>2007-07-10 23:20:42 +0200
commit7e7f73cf9d7a55cde858a07c1d16bde57006fb6d (patch)
treed86f36861d635c7dddbde60e04d4351e4a888f13 /misc-utils/cal.c
parentdb94975b5972a691d32fe34ed82d5f76713f9895 (diff)
downloadutil-linux-old-7e7f73cf9d7a55cde858a07c1d16bde57006fb6d.tar.gz
cal: add test code
This patch allows to override the time() and define a different time by TEST_TIME env. variable. The code has to be compiled with -DTEST_CAL. Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'misc-utils/cal.c')
-rw-r--r--misc-utils/cal.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/misc-utils/cal.c b/misc-utils/cal.c
index dc5848aa..f5ede93d 100644
--- a/misc-utils/cal.c
+++ b/misc-utils/cal.c
@@ -351,7 +351,16 @@ main(int argc, char **argv) {
errx(1, _("illegal year value: use 1-9999"));
break;
case 0:
- time(&now);
+ {
+#ifdef TEST_CAL
+ char *e = getenv("TEST_TIME");
+
+ if (e && isdigit((unsigned char) *e))
+ now = atol(e);
+ else
+#endif
+ time(&now);
+ }
local_time = localtime(&now);
if (isatty(1))
day = local_time->tm_yday + 1;