From: Rico Hoppe Date: Fri, 7 Feb 2025 16:11:58 +0000 (+0000) Subject: tests/string.c: add test function for time formatting X-Git-Tag: 0.9.30~50 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ba76b96d63803689abbbf651e5e78a2bc06ff1fe;p=pakfire.git tests/string.c: add test function for time formatting Signed-off-by: Rico Hoppe Signed-off-by: Michael Tremer --- diff --git a/tests/libpakfire/string.c b/tests/libpakfire/string.c index 56e01a96..706c0b4a 100644 --- a/tests/libpakfire/string.c +++ b/tests/libpakfire/string.c @@ -303,6 +303,35 @@ FAIL: return EXIT_FAILURE; } +static int test_format_time(const struct test* t) { + char buffer[128]; + + // Values smaller than zero + ASSERT_SUCCESS(pakfire_format_time(buffer, -1)); + ASSERT_STRING_EQUALS(buffer, NULL); + + // Values greater than a day + ASSERT_SUCCESS(pakfire_format_time(buffer, 86400)); + ASSERT_STRING_EQUALS(buffer, "1d0h0m"); + + // Values greater than an hour + ASSERT_SUCCESS(pakfire_format_time(buffer, 3600)); + ASSERT_STRING_EQUALS(buffer, "1h0m0s"); + + // Values greater than a minute + ASSERT_SUCCESS(pakfire_format_time(buffer, 60)); + ASSERT_STRING_EQUALS(buffer, "1m0s"); + + // Values below a minute + ASSERT_SUCCESS(pakfire_format_time(buffer, 1)); + ASSERT_STRING_EQUALS(buffer, "1s"); + + return EXIT_SUCCESS; + +FAIL: + return EXIT_FAILURE; +} + static int test_parse_bytes(const struct test* t) { // Zero without unit ASSERT(pakfire_string_parse_bytes("0") == (size_t)0); @@ -449,6 +478,7 @@ int main(int argc, const char* argv[]) { testsuite_add_test(test_string_join, 0); testsuite_add_test(test_format_size, 0); testsuite_add_test(test_format_speed, 0); + testsuite_add_test(test_format_time, 0); testsuite_add_test(test_parse_bytes, 0); testsuite_add_test(test_intervals, 0); testsuite_add_test(test_string_contains_whitespace, 0);