feat: time calculation business logic
This commit is contained in:
42
tests/test_time_calc.py
Normal file
42
tests/test_time_calc.py
Normal file
@@ -0,0 +1,42 @@
|
||||
from app.business.time_calc import (
|
||||
minutes_to_str,
|
||||
work_minutes_reference,
|
||||
week_balance_minutes,
|
||||
)
|
||||
|
||||
|
||||
def test_minutes_to_str_basic():
|
||||
assert minutes_to_str(465) == "7h45"
|
||||
|
||||
|
||||
def test_minutes_to_str_zero():
|
||||
assert minutes_to_str(0) == "0h00"
|
||||
|
||||
|
||||
def test_minutes_to_str_negative():
|
||||
assert minutes_to_str(-75) == "-1h15"
|
||||
|
||||
|
||||
def test_work_minutes_reference_normal_day():
|
||||
assert work_minutes_reference("WORK") == 465
|
||||
assert work_minutes_reference("TT") == 465
|
||||
assert work_minutes_reference("FORMATION") == 465
|
||||
|
||||
|
||||
def test_work_minutes_reference_garde():
|
||||
assert work_minutes_reference("GARDE") == 600
|
||||
|
||||
|
||||
def test_work_minutes_reference_absence():
|
||||
assert work_minutes_reference("RTT") == 0
|
||||
assert work_minutes_reference("CONGE") == 0
|
||||
assert work_minutes_reference("MALADE") == 0
|
||||
assert work_minutes_reference("FERIE") == 0
|
||||
|
||||
|
||||
def test_week_balance_positive():
|
||||
assert week_balance_minutes(2400, 2325) == 75
|
||||
|
||||
|
||||
def test_week_balance_negative():
|
||||
assert week_balance_minutes(2200, 2325) == -125
|
||||
Reference in New Issue
Block a user