summaryrefslogtreecommitdiff
path: root/test-date.c
diff options
context:
space:
mode:
Diffstat (limited to 'test-date.c')
-rw-r--r--test-date.c28
1 files changed, 17 insertions, 11 deletions
diff --git a/test-date.c b/test-date.c
index a9e705f79a..63f373557e 100644
--- a/test-date.c
+++ b/test-date.c
@@ -7,27 +7,33 @@ static const char *usage_msg = "\n"
static void show_dates(char **argv, struct timeval *now)
{
- char buf[128];
+ struct strbuf buf = STRBUF_INIT;
for (; *argv; argv++) {
time_t t = atoi(*argv);
- show_date_relative(t, 0, now, buf, sizeof(buf));
- printf("%s -> %s\n", *argv, buf);
+ show_date_relative(t, 0, now, &buf);
+ printf("%s -> %s\n", *argv, buf.buf);
}
+ strbuf_release(&buf);
}
static void parse_dates(char **argv, struct timeval *now)
{
+ struct strbuf result = STRBUF_INIT;
+
for (; *argv; argv++) {
- char result[100];
- time_t t;
+ unsigned long t;
+ int tz;
- result[0] = 0;
- parse_date(*argv, result, sizeof(result));
- t = strtoul(result, NULL, 0);
- printf("%s -> %s\n", *argv,
- t ? show_date(t, 0, DATE_ISO8601) : "bad");
+ strbuf_reset(&result);
+ parse_date(*argv, &result);
+ if (sscanf(result.buf, "%lu %d", &t, &tz) == 2)
+ printf("%s -> %s\n",
+ *argv, show_date(t, tz, DATE_MODE(ISO8601)));
+ else
+ printf("%s -> bad\n", *argv);
}
+ strbuf_release(&result);
}
static void parse_approxidate(char **argv, struct timeval *now)
@@ -35,7 +41,7 @@ static void parse_approxidate(char **argv, struct timeval *now)
for (; *argv; argv++) {
time_t t;
t = approxidate_relative(*argv, now);
- printf("%s -> %s\n", *argv, show_date(t, 0, DATE_ISO8601));
+ printf("%s -> %s\n", *argv, show_date(t, 0, DATE_MODE(ISO8601)));
}
}