def test_donorcollection_donorlist(): """Test donorColletion creation by donorList method with list inputs from donor_data.donors This test is to verify that the donor_data.donors is not modificed, similar to test_get_donor_names, but with donorList method """ dList = [] dList.append( Donor.multi_donation('Homer Simpson', donor_data.donors['Homer Simpson'])) dList.append( Donor.multi_donation('Charles Burns', donor_data.donors['Charles Burns'])) dList.append( Donor.multi_donation('Kent Brockman', donor_data.donors['Kent Brockman'])) c = DonorCollection.donorList(dList) assert isinstance(c.donors['Homer Simpson'], Donor) assert isinstance(c.donors['Charles Burns'], Donor) assert c.donors['Homer Simpson'].donations == [25.15] assert c.donors['Charles Burns'].donations == [0.01, 0.05] assert c.donors['Kent Brockman'].donations == [105.75, 225.76, 387.90]
def test_donor_multi_donation_with_string(): with pytest.raises(ValueError): d = Donor.multi_donation('Homer Simpson', [15, 'wrong', 100.00])
def test_donor_multi_donation(): d = Donor.multi_donation('Homer Simpson', [15, 25.25, 100.00]) assert d.donations == [15, 25.25, 100.00]