def test_single_yields_that(self): composite = AlarmComposite() alarm = Alarm() composite.add_alarm(alarm) self.assertEqual(0, composite.target_hour) alarm.target_hour = 5 self.assertEqual(5, composite.target_hour)
def test_double_yields_nearest_two(self): from datetime import datetime with patch("utilities.TestableDateTime") as mock_date: mock_date.now.return_value = datetime( 2006, 1, 1, 6, 0) # 6:00, Sunday, Jan 1st, 2006 composite = AlarmComposite() alarm1 = Alarm() alarm2 = Alarm() composite.add_alarms(alarm1, alarm2) alarm1.add_target_day(Days.MONDAY) alarm1.target_hour = 7 alarm2.add_target_day(Days.SUNDAY) alarm2.target_hour = 8 self.assertEqual(8, composite.target_hour)
def test_double_yields_nearest(self): from datetime import datetime with patch("utilities.TestableDateTime") as mock_date: mock_date.now.return_value = datetime( 2006, 1, 1, 6, 0) # 6:00, Sunday, Jan 1st, 2006 composite = AlarmComposite() alarm1 = Alarm() alarm2 = Alarm() composite.add_alarms(alarm1, alarm2) alarm1.add_target_day(Days.FRIDAY) alarm1.target_hour = 6 alarm1.target_minute = 0 alarm2.add_target_day(Days.SUNDAY) alarm2.target_hour = 6 alarm2.target_minute = 20 self.assertEqual(alarm2.get_desired_brightness(), composite.get_desired_brightness())
def test__mock_date__next_day__returns_expected_day(mock_datetime, set_days, expected_day, freezer): freezer.move_to(mock_datetime) alarm = Alarm() alarm.add_target_day(set_days) alarm.target_hour = 6 alarm.target_minute = 0 next_day = alarm.next_day assert expected_day == next_day
def test__mock_date__taget_datetime__returns_expected_value( mock_datetime, set_days, expected_target, freezer): freezer.move_to(mock_datetime) alarm = Alarm() alarm.add_target_day(set_days) alarm.target_hour = 6 alarm.target_minute = 0 target = alarm.target_datetime assert expected_target == target
def test__alarm__db_close_and_repone__returns_same_data(temp_db): alarm = Alarm() alarm.target_days = utilities.Days.MONDAY | utilities.Days.FRIDAY alarm.target_hour = 6 alarm.target_minute = 5 temp_db.add_alarm(alarm) expected_id = temp_db.get_alarms()[0].id temp_db._close() temp_db._open() reloaded_alarm = temp_db.get_alarms()[0] expected_alarm = database.DBAlarm(alarm) expected_alarm.id = expected_id assert expected_alarm == reloaded_alarm
def test_single_yields_that(self): from datetime import datetime with patch("utilities.TestableDateTime") as mock_date: mock_date.now.return_value = datetime( 2006, 1, 1, 6, 0) # 6:00, Sunday, Jan 1st, 2006 composite = AlarmComposite() alarm = Alarm() composite.add_alarm(alarm) alarm.add_target_day(Days.SUNDAY) alarm.target_hour = 6 alarm.target_minute = 5 self.assertEqual(alarm.get_desired_brightness(), composite.get_desired_brightness())
def default_alarm(): alarm = Alarm() alarm.add_target_day(Days.SUNDAY) alarm.target_hour = 6 alarm.target_minute = 0 yield alarm