Merge pull request #4148 from datacompboy/patch-2

Add more tests to time_test
This commit is contained in:
Adam Cozzette 2018-01-08 10:41:54 -08:00 committed by GitHub
commit b77aa8011d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -149,6 +149,59 @@ TEST(DateTimeTest, LeapYear) {
CreateTimestamp(2400, 3, 1) - CreateTimestamp(2400, 2, 29));
}
TEST(DateTimeTest, WrongDays) {
int64 seconds;
DateTime time;
time.hour = 0;
time.minute = 0;
time.second = 0;
time.month = 2;
// Non-leap year.
time.year = 2015;
time.day = 29;
ASSERT_FALSE(DateTimeToSeconds(time, &seconds));
// Leap year.
time.year = 2016;
time.day = 29;
ASSERT_TRUE(DateTimeToSeconds(time, &seconds));
time.day = 30;
ASSERT_FALSE(DateTimeToSeconds(time, &seconds));
// Non-leap year.
time.year = 2100;
time.day = 29;
ASSERT_FALSE(DateTimeToSeconds(time, &seconds));
// Leap year.
time.year = 2400;
time.day = 29;
ASSERT_TRUE(DateTimeToSeconds(time, &seconds));
time.day = 30;
ASSERT_FALSE(DateTimeToSeconds(time, &seconds));
// Non-february
time.year = 2015;
time.month = 1;
time.day = 0;
ASSERT_FALSE(DateTimeToSeconds(time, &seconds));
time.day = 1;
ASSERT_TRUE(DateTimeToSeconds(time, &seconds));
time.day = 31;
ASSERT_TRUE(DateTimeToSeconds(time, &seconds));
time.day = 32;
ASSERT_FALSE(DateTimeToSeconds(time, &seconds));
// Bad month
time.year = 2015;
time.month = 0;
time.day = 1;
ASSERT_FALSE(DateTimeToSeconds(time, &seconds));
time.month = 13;
ASSERT_FALSE(DateTimeToSeconds(time, &seconds));
}
TEST(DateTimeTest, StringFormat) {
DateTime start, end;
start.year = 1;