Coverage for src/tests/core/domain/value_objects/test_time_period.py: 100%

14 statements  

« prev     ^ index     » next       coverage.py v7.11.0, created at 2024-01-01 00:00 +0000

1"""Module for testing TimePeriod value object.""" 

2 

3from datetime import time, timedelta 

4 

5from kwai_core.domain.value_objects.time_period import TimePeriod 

6 

7 

8def test_delta(): 

9 """Test delta of a TimePeriod.""" 

10 period = TimePeriod(start=time(hour=20), end=time(hour=21)) 

11 

12 assert period.delta == timedelta(hours=1), "The delta should be 1 hour" 

13 

14 

15def test_create_from_string(): 

16 """Test creating a time period from strings.""" 

17 period = TimePeriod.create_from_string("20:00") 

18 assert period.endless, "This period should not have an end time." 

19 assert period.start.hour == 20, "The hours should be 20" 

20 assert period.start.minute == 0, "The minutes should be 0" 

21 

22 period = TimePeriod.create_from_string("20:00", "21:30") 

23 assert not period.endless, "This period should have an end time." 

24 assert period.end.hour == 21, "The hours should be 20" 

25 assert period.end.minute == 30, "The minutes should be 30"