From 1dd61141456ecf27d2575f40d5df104f5efd168f Mon Sep 17 00:00:00 2001 From: Bastian Dehn Date: Tue, 11 Jun 2024 20:24:38 +0200 Subject: [PATCH] add brutto work time --- src/worktime.c | 7 +++++++ src/worktime.h | 1 + tests/worktime_tests.c | 11 +++++++++++ 3 files changed, 19 insertions(+) diff --git a/src/worktime.c b/src/worktime.c index a078c8d..07dad9d 100644 --- a/src/worktime.c +++ b/src/worktime.c @@ -4,6 +4,13 @@ #define EIGHT_HOURS 28800 #define TEN_HOURS 36000 +time_t get_brutto_worktime(time_t begin, time_t now) +{ + time_t worktime = difftime(now, begin); + + return worktime; +} + time_t get_current_worktime(time_t begin, time_t now) { time_t worktime = difftime(now, begin); diff --git a/src/worktime.h b/src/worktime.h index e2ca19e..492a8f9 100644 --- a/src/worktime.h +++ b/src/worktime.h @@ -2,6 +2,7 @@ #define WORKTIME_H #include +time_t get_brutto_worktime(time_t begin, time_t now); time_t get_current_worktime(time_t begin, time_t now); time_t get_eight_hour_end_worktime(time_t begin); time_t get_ten_hour_end_worktime(time_t begin); diff --git a/tests/worktime_tests.c b/tests/worktime_tests.c index 2c01cb3..e12764d 100644 --- a/tests/worktime_tests.c +++ b/tests/worktime_tests.c @@ -34,6 +34,16 @@ void get_current_worktime_four_hours_thirteen_test() assert_int_equal(result, 14280); } +void get_brutto_worktime_four_hours_fourty_five_test() +{ + time_t begin = 23400; + time_t now = 38580; + + time_t result = get_brutto_worktime(begin, now); + + assert_int_equal(result, 15180); +} + void get_diff_to_end_eight_hour_end_test() { time_t begin = 23400; @@ -60,6 +70,7 @@ int main() cmocka_unit_test(get_eigth_hour_end_time_test), cmocka_unit_test(get_ten_hour_end_time_test), cmocka_unit_test(get_current_worktime_four_hours_thirteen_test), + cmocka_unit_test(get_brutto_worktime_four_hours_fourty_five_test), cmocka_unit_test(get_diff_to_end_eight_hour_end_test), cmocka_unit_test(get_diff_to_end_ten_hour_end_test), }; -- 2.39.5