]> gitweb.hhaalo.de Git - feierabend.git/commitdiff
add test for current worktime
authorBastian Dehn <hhaalo@arcor.de>
Sun, 9 Jun 2024 10:38:14 +0000 (12:38 +0200)
committerBastian Dehn <hhaalo@arcor.de>
Sun, 9 Jun 2024 10:38:14 +0000 (12:38 +0200)
src/worktime.c
tests/worktime_tests.c

index 20b37175cbe8127e9582c92b96fb49e2d61f0d43..4261796e69f6fc00889aa7399eb4d3d8d2d03d81 100644 (file)
@@ -6,7 +6,10 @@
 
 time_t get_current_worktime(time_t begin, time_t now)
 {
-       return 0;
+       time_t worktime = now - begin;
+       worktime -= get_break_time(worktime);
+
+       return worktime;
 }
 
 time_t get_current_worktime_diff_to_end_eight_hour(time_t begin, time_t now)
index 4446aae75d5291bf9953b59f3ce0b2bd78199c50..494ce8d4055965f09a24df357f797ca642c825c7 100644 (file)
@@ -24,11 +24,22 @@ void get_ten_hour_end_time_test()
        assert_int_equal(result, 62100);
 }
 
+void get_current_worktime_four_hours_thirteen()
+{
+       time_t begin = 23400;
+       time_t now = 38580;
+
+       time_t result = get_current_worktime(begin, now);
+
+       assert_int_equal(result, 14280);
+}
+
 int main()
 {
        const struct CMUnitTest tests[] = {
                cmocka_unit_test(get_eigth_hour_end_time_test),
-               cmocka_unit_test(get_ten_hour_end_time_test)
+               cmocka_unit_test(get_ten_hour_end_time_test),
+               cmocka_unit_test(get_current_worktime_four_hours_thirteen),
        };
 
        return cmocka_run_group_tests(tests, NULL, NULL);