def test_donor_setter(): d = Donor('Nam Vo', [100, 50.0]) d.name = 'Vu Vo' d.donations = [40, 55.5] print(f"d = {d}") assert (d.name) == 'Vu Vo' assert (d.donations) == [40.0, 55.5] with pytest.raises(TypeError): d.name = 1000 with pytest.raises(ValueError): d.donations = [30, -15]
def test_send_letter(): donor = Donor("Daffey Duck") donor.donations = [5000.24, 10000.34, 30000, 300] letter = donor.send_letter() assert letter.startswith("Dear Daffey Duck,") assert "Dear Daffey Duck" in letter #assert letter.endswith("Sincerely, -The Team\n") assert "donation of $300.00" in letter
def test_avg_donation_made(): donor = Donor("Bugs Bunny") donor.donations = [1000, 5000, 3000] assert sum(donor.donations) / len(donor.donations) == 3000
def test_total_donations_made(): donor = Donor("Daffey Duck") donor.donations = [5000.24, 10000.34, 30000, 300] assert len(donor.donations) == 4
def test_sum_donation_total(): donor = Donor("Yogi Bear") donor.donations = [2000.33, 4000, 1000] assert sum(donor.donations) == 7000.33
def test_last_donation(): donor = Donor("Yosemite Sam") donor.donations = [100.56, 200.23, 300] assert donor.donations[-1] == 300