aboutsummaryrefslogtreecommitdiffstats
path: root/util/datetime/parser_ut.cpp
diff options
context:
space:
mode:
authorvadim-xd <vadim-xd@yandex-team.com>2023-11-09 11:42:27 +0300
committervadim-xd <vadim-xd@yandex-team.com>2023-11-09 12:25:16 +0300
commit7695c63bbcdefb3b2dd6ca045d9a848c98154fc0 (patch)
tree2c77d1ffc38ba256adcf3e7f8ca901d4096427f9 /util/datetime/parser_ut.cpp
parentc576fbcfb493c33a2342baeef87219b1839889c5 (diff)
downloadydb-7695c63bbcdefb3b2dd6ca045d9a848c98154fc0.tar.gz
Fix ISO 8601 parser for dates with year < 160
Diffstat (limited to 'util/datetime/parser_ut.cpp')
-rw-r--r--util/datetime/parser_ut.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/util/datetime/parser_ut.cpp b/util/datetime/parser_ut.cpp
index 61364af997..6f5c300228 100644
--- a/util/datetime/parser_ut.cpp
+++ b/util/datetime/parser_ut.cpp
@@ -281,6 +281,13 @@ Y_UNIT_TEST_SUITE(TDateTimeParseTest) {
UNIT_ASSERT_VALUES_EQUAL(TInstant::Seconds(637487058), p.GetResult(TInstant::Zero()));
}
+ Y_UNIT_TEST(TestIso8601BeforeEpoch) {
+ TIso8601DateTimeParser p;
+ static constexpr TStringBuf timestamp = "0001-01-01T00:00:00Z";
+ UNIT_ASSERT(p.ParsePart(timestamp.begin(), timestamp.size()));
+ UNIT_ASSERT_VALUES_EQUAL(p.GetDateTimeFields().Year, 1);
+ }
+
Y_UNIT_TEST(TestIso8601Correct) {
bool ret;
time_t t;