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)
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);