diff --git a/http/ut/utility_test.cpp b/http/ut/utility_test.cpp
index cb914d5..4748c25 100644
--- a/http/ut/utility_test.cpp
+++ b/http/ut/utility_test.cpp
@@ -57,21 +57,54 @@
     EXPECT_EQ(data, decoded);
 }
 
-TEST(Utility, GetDateTime)
+TEST(Utility, GetDateTimeStdtime)
 {
+    using crow::utility::getDateTimeStdtime;
+
     // some time before the epoch
-    EXPECT_EQ(crow::utility::getDateTimeStdtime(std::time_t{-1234567}),
+    EXPECT_EQ(getDateTimeStdtime(std::time_t{-1234567}),
               "1969-12-17T17:03:53+00:00");
+
     // epoch
-    EXPECT_EQ(crow::utility::getDateTimeStdtime(std::time_t{0}),
-              "1970-01-01T00:00:00+00:00");
+    EXPECT_EQ(getDateTimeStdtime(std::time_t{0}), "1970-01-01T00:00:00+00:00");
     // some time in the past after the epoch
-    EXPECT_EQ(crow::utility::getDateTimeUint(uint64_t{1638312095}),
+
+    // Limits
+    EXPECT_EQ(getDateTimeStdtime(std::numeric_limits<std::time_t>::max()),
+              "1969-12-31T23:59:59+00:00");
+    EXPECT_EQ(getDateTimeStdtime(std::numeric_limits<std::time_t>::min()),
+              "1970-01-01T00:00:00+00:00");
+}
+
+TEST(Utility, getDateTimeUint)
+{
+    using crow::utility::getDateTimeUint;
+
+    EXPECT_EQ(getDateTimeUint(uint64_t{1638312095}),
               "2021-11-30T22:41:35+00:00");
     // some time in the future, beyond 2038
-    EXPECT_EQ(crow::utility::getDateTimeUint(uint64_t{41638312095}),
+    EXPECT_EQ(getDateTimeUint(uint64_t{41638312095}),
               "3289-06-18T21:48:15+00:00");
     // the maximum time we support
-    EXPECT_EQ(crow::utility::getDateTimeUint(uint64_t{253402300799}),
+    EXPECT_EQ(getDateTimeUint(uint64_t{253402300799}),
               "9999-12-31T23:59:59+00:00");
+
+    // This test currently throws an exception
+    // EXPECT_EQ(getDateTimeUint(std::numeric_limits<uint64_t>::max()), "");
+
+    EXPECT_EQ(getDateTimeUint(std::numeric_limits<uint64_t>::min()),
+              "1970-01-01T00:00:00+00:00");
+}
+
+TEST(Utility, getDateTimeUintMs)
+{
+    using crow::utility::getDateTimeUintMs;
+
+    // Note, this is the wrong result, but is here to make sure that we don't
+    // have worse behavior (ie seg faults, exceptions) when this happens
+    EXPECT_EQ(getDateTimeUintMs(std::numeric_limits<uint64_t>::max()),
+              "1969-12-31T23:59:59.999000+00:00");
+
+    EXPECT_EQ(getDateTimeUintMs(std::numeric_limits<uint64_t>::min()),
+              "1970-01-01T00:00:00+00:00");
 }
