From: Pádraig Brady
Date: Mon, 9 Feb 2026 15:36:46 +0000 (+0000)
Subject: parse-datetime: add tests for dd.mm.yy and mm/dd/yy formats
X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e0e930371ee5e2f1a24eb15cd6aebca9f756e9d4;p=thirdparty%2Fgnulib.git
parse-datetime: add tests for dd.mm.yy and mm/dd/yy formats
* tests/test-parse-datetime.c: Add test cases.
---
diff --git a/ChangeLog b/ChangeLog
index 8b17dfacd7..c91b4225f6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2026-02-12 Pádraig Brady
+
+ parse-datetime: add tests for dd.mm.yy and mm/dd/yy formats
+ * tests/test-parse-datetime.c: Add test cases.
+
2026-02-10 Sergei Litvin
poll: When setting POLLHUP in revents, set also POLLIN and POLLRDNORM.
diff --git a/tests/test-parse-datetime.c b/tests/test-parse-datetime.c
index 06e98323b7..b560639e2d 100644
--- a/tests/test-parse-datetime.c
+++ b/tests/test-parse-datetime.c
@@ -235,6 +235,41 @@ main (_GL_UNUSED int argc, char **argv)
ASSERT (expected.tv_sec == result.tv_sec
&& expected.tv_nsec == result.tv_nsec);
+ /* DD.MM.YYYY */
+ p = "01.05.2011 11:55:18";
+ expected.tv_sec = ref_time - gmtoff;
+ expected.tv_nsec = 0;
+ ASSERT (parse_datetime (&result, p, NULL));
+ LOG (p, expected, result);
+ ASSERT (expected.tv_sec == result.tv_sec
+ && expected.tv_nsec == result.tv_nsec);
+
+ /* DD.MM. */
+ now.tv_sec = SOME_TIMEPOINT + 4711;
+ now.tv_nsec = 1267;
+ p = "01.05";
+ ASSERT (!parse_datetime (&result, p, &now));
+ p = "01.05.";
+ ASSERT (parse_datetime (&result, p, &now));
+ LOG (p, now, result);
+ ASSERT (result.tv_nsec == 0);
+
+ /* MM/DD/YYYY */
+ p = "05/01/2011 11:55:18";
+ expected.tv_sec = ref_time - gmtoff;
+ expected.tv_nsec = 0;
+ ASSERT (parse_datetime (&result, p, NULL));
+ LOG (p, expected, result);
+ ASSERT (expected.tv_sec == result.tv_sec
+ && expected.tv_nsec == result.tv_nsec);
+
+ /* MM/DD */
+ now.tv_sec = SOME_TIMEPOINT + 4711;
+ now.tv_nsec = 1267;
+ p = "05/01";
+ ASSERT (parse_datetime (&result, p, &now));
+ LOG (p, now, result);
+ ASSERT (result.tv_nsec == 0);
now.tv_sec = SOME_TIMEPOINT + 4711;
now.tv_nsec = 1267;