def test__sanitize_month_names(self, patch_ss): weekday_names, calendar, patch_ss = self.rand_cal_with_patched_ss( patch_ss) bad_month_names1 = FAKE.random_elements(elements=[1, 2, 3, 4, 5, 6, 7]) bad_month_names2 = FAKE.random_elements(elements=[0, 8, 9, 10, 11, 12]) calendar.common_year_month_names = bad_month_names1 calendar.leap_year_month_names = bad_month_names2 patch_ss.assert_any_call(bad_month_names1) patch_ss.assert_any_call(bad_month_names2)
def random_bad_days_in_months() -> tuple[int, tuple]: num_months = FAKE.random_int(min=1, max=20) length = num_months + FAKE.random_int(min=1) num_elements = length + FAKE.random_int(min=1) bad_days_in_months = FAKE.random_elements( length=length, elements=[days for days in range(1, num_elements)], ) return num_months, bad_days_in_months
def test__validates_cycle_ordinals(self, patch_integer_sanitization): leap_year_cycle_ordinals = FAKE.random_elements( elements=[x for x in range(1, FAKE.random_int(min=2))]) patch_integer_sanitization.return_value = leap_year_cycle_ordinals calendar = self.calendar_factory.build( leap_year_cycle_ordinals=leap_year_cycle_ordinals) bad_leap_ords = [x for x in range(FAKE.random_int(min=-99, max=-1), 0)] patch_integer_sanitization.return_value = bad_leap_ords with pytest.raises(AssertionError): calendar.leap_year_cycle_ordinals = bad_leap_ords patch_integer_sanitization.assert_any_call(leap_year_cycle_ordinals) patch_integer_sanitization.assert_any_call(bad_leap_ords)
def test__validate_days_in_months(self, patch_integer_sanitization): num = FAKE.random_int(min=2) days_in_common_year_months = FAKE.random_elements( elements=[day for day in range(1, num)]) days_in_leap_year_months = FAKE.random_elements( elements=[day for day in range(1, num)]) negative_days_in_months = FAKE.random_elements( elements=[-day for day in range(1, num)]) self.calendar_factory.build( days_in_common_year_months=days_in_common_year_months, days_in_leap_year_months=days_in_leap_year_months, ) patch_integer_sanitization.assert_any_call(days_in_common_year_months) patch_integer_sanitization.assert_any_call(days_in_leap_year_months) with pytest.raises(AssertionError): self.calendar_factory.build( days_in_common_year_months=negative_days_in_months, ) with pytest.raises(AssertionError): self.calendar_factory.build( days_in_leap_year_months=negative_days_in_months, )