]> git.ipfire.org Git - thirdparty/gnulib.git/commitdiff
parse-datetime: add tests for dd.mm.yy and mm/dd/yy formats
authorPádraig Brady <P@draigBrady.com>
Mon, 9 Feb 2026 15:36:46 +0000 (15:36 +0000)
committerPádraig Brady <P@draigBrady.com>
Thu, 12 Feb 2026 14:01:27 +0000 (14:01 +0000)
* tests/test-parse-datetime.c: Add test cases.

ChangeLog
tests/test-parse-datetime.c

index 8b17dfacd7b9b6ac4c5adcb91d648be7cdf37be8..c91b4225f64c43e15c002dd7ef5b77df9bf512bc 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2026-02-12  Pádraig Brady  <P@draigBrady.com>
+
+       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  <litvindev@gmail.com>
 
        poll: When setting POLLHUP in revents, set also POLLIN and POLLRDNORM.
index 06e98323b760426d02a25f3c14f4cb753b28fa01..b560639e2dd259daa447cdeb926414239f4dbfde 100644 (file)
@@ -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;