#define DATE_REGEX "^[0-9]{4}-([0][1-9]|1[0-2])-([0-2][1-9]|[1-3]0|3[01])$"
#define HOUR_REGEX "^([0-9]|1[0-9]|2[0-3])$"
+#define MINUTE_REGEX "^([0-9]|[1-5][0-9])$"
void get_time_str(time_t timediff, char* timestr)
{
bool validate_hourstring(const char* hour)
{
return validate_string(hour, HOUR_REGEX);
+}
+
+bool validate_minutestring(const char* hour)
+{
+ return validate_string(hour, MINUTE_REGEX);
}
\ No newline at end of file
int get_day_from_str(const char* date);
bool validate_datestring(const char* date);
bool validate_hourstring(const char* hour);
+bool validate_minutestring(const char* hour);
#endif
\ No newline at end of file
validate_invaild_hour_string("100");
}
+void validate_vaild_minutes_string(const char* minutes)
+{
+ bool valid = validate_minutestring(minutes);
+
+ assert_true(valid);
+}
+
+void validate_valid_minutes_string_test()
+{
+ char* minutes = malloc(sizeof(char) * 3);
+ if (minutes == NULL)
+ return;
+
+ for (int i = 0; i < 60; i++) {
+ memset(minutes, 0, 3);
+ sprintf(minutes, "%d", i);
+ validate_vaild_minutes_string(minutes);
+ }
+
+ free(minutes);
+ minutes = NULL;
+}
+
+void validate_invaild_minutes_string(const char* minutes)
+{
+ bool valid = validate_minutestring(minutes);
+
+ assert_false(valid);
+}
+
+void validate_invalid_minutes_string_test()
+{
+ validate_invaild_minutes_string("text");
+ validate_invaild_minutes_string("-1");
+ validate_invaild_minutes_string("01");
+ validate_invaild_minutes_string("60");
+ validate_invaild_minutes_string("100");
+}
+
int main()
{
const struct CMUnitTest tests[] = {
cmocka_unit_test(validate_valid_date_string_tests),
cmocka_unit_test(validate_invalid_date_string_tests),
cmocka_unit_test(validate_valid_hour_string_test),
- cmocka_unit_test(validate_invalid_hour_string_test)
+ cmocka_unit_test(validate_invalid_hour_string_test),
+ cmocka_unit_test(validate_valid_minutes_string_test),
+ cmocka_unit_test(validate_invalid_minutes_string_test)
};
return cmocka_run_group_tests(tests, NULL, NULL);