def test_incorrect_pesel_validation(pesel_value): assert Pesel.validate(pesel_value) is False
def test_correct_pesel_eq_str_int(pesel_value, same_pesel_value): assert Pesel(pesel_value) == same_pesel_value
def test_pesel_string(self): result = Pesel(peselkwarg="12345678901") assert result
def test_correct_pesel_ge_pesel(pesel_value, other_pesel_value, same_pesel_value): with pytest.assume: assert Pesel(pesel_value) >= Pesel(other_pesel_value) assert Pesel(pesel_value) >= Pesel(same_pesel_value)
def pesel_obj(pesel_value): return Pesel(pesel_value)
def test_incorrect_day(day): with pytest.raises(ValueError): Pesel.generate(day=day)
def generate(dob, gender): p = Pesel() print(p.generate(dob, gender))
def test_birthdate_correct(self): birthdate_correct = Pesel(peselkwarg="97121100156").date_of_birth() assert birthdate_correct == "1997-Dec-11"
def test_birthdate_failure(self): with pytest.raises(ValueError) as e: birthdate_failure = Pesel(peselkwarg="97341100156").date_of_birth() assert e.value == 'month must be in 1..12'
def test_gender_woman(self): gender_woman = Pesel(peselkwarg="97082035264").gender_check() assert gender_woman == "Kobieta"
def test_gender_man(self): gender_man = Pesel(peselkwarg="97081032157").gender_check() assert gender_man == "Mężczyzna"
def test_pesel_char(self): with pytest.raises(ValueError): assert Pesel(peselkwarg="qwertyuiop")
def test_pesel_lenght(self): result = len(Pesel(peselkwarg="12345").pesel) != 11 assert result
def test_pesel_int(self): assert Pesel(peselkwarg=12345678901)
def test_incorrect_year(year): with pytest.raises(ValueError): Pesel.generate(year=year)
def test_control_sum_correct(self): control_sum = Pesel(peselkwarg="97341100156")._calculate_control_sum() assert control_sum
def test_incorrect_month(month): with pytest.raises(ValueError): Pesel.generate(month=month)
def test_control_sum_failure(self): with pytest.raises(ValueError) as e: control_sum = Pesel( peselkwarg="qweetrywer1")._calculate_control_sum() assert control_sum
def test_incorrect_year_month_day(year, month, day): with pytest.raises(ValueError): Pesel.generate(year=year, month=month, day=day)
def test_validate_correct(self): result = Pesel(peselkwarg="97081800157").validate() assert result
def test_correct_pesel_le_pesel(pesel_value, other_pesel_value, same_pesel_value): with pytest.assume: assert Pesel(other_pesel_value) <= Pesel(pesel_value) assert Pesel(same_pesel_value) <= Pesel(pesel_value) def test_correct_pesel_le_date(pesel_value, other_pesel_value, same_pesel_value): with pytest.assume: assert Pesel(other_pesel_value) <= Pesel(pesel_value).date assert Pesel(same_pesel_value) <= Pesel(pesel_value).date @pytest.mark.parametrize(['pesel', 'gender'], ( (Pesel('65432101239'), 'male'), (Pesel('66032072666'), 'female'), )) def test_correct_pesel_gender(pesel, gender): pytest.assume(pesel.gender == gender) @pytest.mark.parametrize(['pesel', 'male'], ( (Pesel('65432101239'), True), (Pesel('66032072666'), False), )) def test_correct_pesel_male(pesel, male): pytest.assume(pesel.male is male) pytest.assume(pesel.female is not male)
def test_validate_failure(self): with pytest.raises(PeselNotValid): result = Pesel(peselkwarg="97081800167").validate() assert result
def test_correct_pesel_le_date(pesel_value, other_pesel_value, same_pesel_value): with pytest.assume: assert Pesel(other_pesel_value) <= Pesel(pesel_value).date assert Pesel(same_pesel_value) <= Pesel(pesel_value).date
def test_incorrect_pesel_object(pesel_value): with pytest.raises(ValueError): Pesel(pesel_value)
def test_correct_pesel_eq_pesel(pesel_value, same_pesel_value): assert Pesel(pesel_value) == Pesel(same_pesel_value)
def test_incorrect_pesel_value_too_short(short_pesel_value): with pytest.raises(ValueError): Pesel.checksum(short_pesel_value)
def test_correct_pesel_neq_other(pesel_value, other_pesel_value): assert Pesel(pesel_value) != other_pesel_value
def test_short_pesel_not_valid(self): with pytest.raises(PeselNotValid): result = Pesel(peselkwarg="2423").validate() assert result