From: Bastian Dehn Date: Fri, 21 Jun 2024 20:13:29 +0000 (+0200) Subject: add weekday shorts X-Git-Tag: 1.2.0^2~16^2~34 X-Git-Url: https://gitweb.hhaalo.de/?a=commitdiff_plain;h=db9cb4d63e775bc91a275fc9b8cc66617c704622;p=feierabend.git add weekday shorts --- diff --git a/src/time_format.c b/src/time_format.c index 06b9edf..e8eccc0 100644 --- a/src/time_format.c +++ b/src/time_format.c @@ -48,4 +48,34 @@ void get_weekday(int wday, char* weekday) sprintf(weekday, "%s", "Unknown"); break; } +} + +void get_short_weekday(int wday, char* weekday) +{ + switch(wday) { + case 0: + sprintf(weekday, "%s", "So"); + break; + case 1: + sprintf(weekday, "%s", "Mo"); + break; + case 2: + sprintf(weekday, "%s", "Di"); + break; + case 3: + sprintf(weekday, "%s", "Mi"); + break; + case 4: + sprintf(weekday, "%s", "Do"); + break; + case 5: + sprintf(weekday, "%s", "Fr"); + break; + case 6: + sprintf(weekday, "%s", "Sa"); + break; + default: + sprintf(weekday, "%s", "--"); + break; + } } \ No newline at end of file diff --git a/src/time_format.h b/src/time_format.h index 2f6364b..d4e53ec 100644 --- a/src/time_format.h +++ b/src/time_format.h @@ -4,5 +4,6 @@ void get_time_str(time_t time, char* timestr); void get_weekday(int wday, char* weekday); +void get_short_weekday(int wday, char* weekday); #endif \ No newline at end of file diff --git a/tests/time_format_tests.c b/tests/time_format_tests.c index d0b20d7..1dee4cf 100644 --- a/tests/time_format_tests.c +++ b/tests/time_format_tests.c @@ -140,6 +140,90 @@ void get_wednesday() weekday = NULL; } +void get_short_sunday() +{ + char* weekday = malloc(sizeof(char) * 3); + + get_short_weekday(0, weekday); + + assert_string_equal(weekday, "So"); + + free(weekday); + weekday = NULL; +} + +void get_short_monday() +{ + char* weekday = malloc(sizeof(char) * 3); + + get_short_weekday(1, weekday); + + assert_string_equal(weekday, "Mo"); + + free(weekday); + weekday = NULL; +} + +void get_short_thuesday() +{ + char* weekday = malloc(sizeof(char) * 3); + + get_short_weekday(2, weekday); + + assert_string_equal(weekday, "Di"); + + free(weekday); + weekday = NULL; +} + +void get_short_wednesday() +{ + char* weekday = malloc(sizeof(char) * 3); + + get_short_weekday(3, weekday); + + assert_string_equal(weekday, "Mi"); + + free(weekday); + weekday = NULL; +} + +void get_short_thursday() +{ + char* weekday = malloc(sizeof(char) * 3); + + get_short_weekday(4, weekday); + + assert_string_equal(weekday, "Do"); + + free(weekday); + weekday = NULL; +} + +void get_short_friday() +{ + char* weekday = malloc(sizeof(char) * 3); + + get_short_weekday(5, weekday); + + assert_string_equal(weekday, "Fr"); + + free(weekday); + weekday = NULL; +} + +void get_short_saturday() +{ + char* weekday = malloc(sizeof(char) * 3); + + get_short_weekday(6, weekday); + + assert_string_equal(weekday, "Sa"); + + free(weekday); + weekday = NULL; +} + int main() { const struct CMUnitTest tests[] = { @@ -153,7 +237,13 @@ int main() cmocka_unit_test(get_monday), cmocka_unit_test(get_thuesday), cmocka_unit_test(get_wednesday), - + cmocka_unit_test(get_short_sunday), + cmocka_unit_test(get_short_monday), + cmocka_unit_test(get_short_thuesday), + cmocka_unit_test(get_short_wednesday), + cmocka_unit_test(get_short_thursday), + cmocka_unit_test(get_short_friday), + cmocka_unit_test(get_short_saturday) }; return cmocka_run_group_tests(tests, NULL, NULL);