def test__alarm_with_day_set__remove_target_day__unsets_that_days_flag( days_set, day_to_remove): alarm = Alarm() alarm.add_target_day(days_set) alarm.remove_target_day(day_to_remove) assert alarm.target_days & day_to_remove == Days( 0 ) # There should be no overlap between still set bits and the day to remove
def test_single_yields_that(self): composite = AlarmComposite() alarm = Alarm() composite.add_alarm(alarm) self.assertEqual(Days(0), composite.target_days) alarm.add_target_day(Days.MONDAY) self.assertEqual(Days.MONDAY, composite.target_days) alarm.remove_target_day(Days.MONDAY) self.assertEqual(Days(0), composite.target_days) alarm.add_target_day(Days.ALL) self.assertEqual(Days.ALL, composite.target_days) alarm.remove_target_day(Days.ALL) alarm.add_target_day(Days.WEDNESDAY) self.assertEqual(Days.WEDNESDAY, composite.target_days)