feat(util): add WowTime::SetHourAndMinute overload

This commit is contained in:
fallenoak 2026-01-28 18:56:12 -06:00
parent 335bd21a26
commit 661b77091f
No known key found for this signature in database
GPG Key ID: 7628F8E61AEA070D
3 changed files with 25 additions and 0 deletions

View File

@ -169,3 +169,14 @@ void WowTime::SetHourAndMinutes(int32_t minutes) {
this->m_hour = minutes / 60; this->m_hour = minutes / 60;
this->m_minute = minutes % 60; this->m_minute = minutes % 60;
} }
int32_t WowTime::SetHourAndMinutes(uint32_t hour, uint32_t minutes) {
if (hour >= 24 || minutes >= 60) {
return 0;
}
this->m_hour = hour;
this->m_minute = minutes;
return 1;
}

View File

@ -25,6 +25,7 @@ class WowTime {
// Member functions // Member functions
int32_t GetHourAndMinutes(); int32_t GetHourAndMinutes();
void SetHourAndMinutes(int32_t minutes); void SetHourAndMinutes(int32_t minutes);
int32_t SetHourAndMinutes(uint32_t hour, uint32_t minutes);
}; };
#endif #endif

View File

@ -152,5 +152,18 @@ TEST_CASE("WowTime::SetHourAndMinutes", "[util]") {
CHECK(time.m_hour == 11); CHECK(time.m_hour == 11);
CHECK(time.m_minute == 18); CHECK(time.m_minute == 18);
time.SetHourAndMinutes(11, 18);
CHECK(time.m_hour == 11);
CHECK(time.m_minute == 18);
}
SECTION("does not set invalid hour and minutes") {
WowTime time;
CHECK(time.SetHourAndMinutes(25, 61) == 0);
CHECK(time.m_hour == -1);
CHECK(time.m_minute == -1);
} }
} }