def test_deleting_an_employee(): db = MemoryDB() empId = AddHourlyEmployee("Jim", "Home", 32.25, db).execute() db.get_employee(empId) dt = DeleteEmployee(empId, db) dt.execute() try: db.get_employee(empId) raise "employee not deleted" except KeyError: pass
def test_changing_name_of_an_employee(): db = MemoryDB() empId = AddHourlyEmployee("wrong", "Home", 1, db).execute() cnt = ChangeName(empId, "Bill", db) cnt.execute() e = db.get_employee(empId) assert e.name == "Bill"
def test_changing_an_address_of_an_employee(): db = MemoryDB() empId = AddHourlyEmployee("Bohn", "wrong", 1, db).execute() cat = ChangeAddress(empId, "Home", db) cat.execute() e = db.get_employee(empId) assert e is not None assert e.address == "Home"
def test_changing_an_address_of_an_employee(): db = MemoryDB() empId = AddHourlyEmployee("Bohn", "wrong", 1, db).execute() cat = ChangeAddress(empId, "Home", db) cat.execute() e = db.get_employee(empId) assert e is not None assert e.address == "Home"
def test_adding_a_service_charge_to_a_member(): db = MemoryDB() empId = AddSalariedEmployee("Bill", "Home", 1000, db).execute() e = db.get_employee(empId) ChangeUnionMember(empId, 10.0, db).execute() sct = AddServiceCharge(e.memberId, date.today(), 12.95, db) sct.execute() sc = e.affiliation.get_service_charge(date.today()) assert sc.charge == 12.95 assert sc.date == date.today()
def test_changing_an_address_of_an_employee(): db = MemoryDB() empId = AddSalariedEmployee("Bohn", "wrong", 1500, db).execute() cs = ChangeHourly(empId, 12.25, db) cs.execute() e = db.get_employee(empId) pc = e.classification assert isinstance(pc, HourlyClassification) assert pc.hourly_rate == 12.25 ps = e.schedule assert isinstance(ps, WeeklySchedule)
def test_changing_an_address_of_an_employee(): db = MemoryDB() empId = AddSalariedEmployee("Bohn", "wrong", 1500, db).execute() cs = ChangeHourly(empId, 12.25, db) cs.execute() e = db.get_employee(empId) pc = e.classification assert isinstance(pc, HourlyClassification) assert pc.hourly_rate == 12.25 ps = e.schedule assert isinstance(ps, WeeklySchedule)
def test_changing_an_employee_to_be_in_a_union_affiliation(): db = MemoryDB() empId = AddHourlyEmployee("Jim", "Home", 12.25, db).execute() cut = ChangeUnionMember(empId, 99.42, db) cut.execute() e = db.get_employee(empId) af = e.affiliation assert af is not None assert af.dues == 99.42 member = db.get_union_member(e.memberId) assert member is e
def test_changing_an_employee_to_be_in_a_union_affiliation(): db = MemoryDB() empId = AddHourlyEmployee("Jim", "Home", 12.25, db).execute() cut = ChangeUnionMember(empId, 99.42, db) cut.execute() e = db.get_employee(empId) af = e.affiliation assert af is not None assert af.dues == 99.42 member = db.get_union_member(e.memberId) assert member is e
def test_changing_an_address_of_an_employee(): db = MemoryDB() empId = AddHourlyEmployee("Bohn", "wrong", 1, db).execute() cc = ChangeCommissioned(empId, 2.5, 1000, db) cc.execute() e = db.get_employee(empId) pc = e.classification assert isinstance(pc, CommissionedClassification) assert pc.baseRate == 1000 assert pc.commission == 2.5 ps = e.schedule assert isinstance(ps, BiWeeklySchedule)
def test_deducting_service_charges(): db = MemoryDB() empId = AddCommissionedEmployee("Bob", "Home", 10, 1000, db).execute() ChangeUnionMember(empId, 99.42, db).execute() mId = db.get_employee(empId).memberId pay_date = datetime.date(2001, 11, 16) AddServiceCharge(mId, pay_date, 10, db).execute() pt = Payday(pay_date, db) pt.execute() pc = pt.get_paycheck(empId) assert pc.gross_pay == 1000 print pc.deductions assert pc.deductions == 109.42 assert pc.net_pay == 1000 - 109.42
def test_deducting_service_charges(): db = MemoryDB() empId = AddCommissionedEmployee("Bob", "Home", 10, 1000, db).execute() ChangeUnionMember(empId, 99.42, db).execute() mId = db.get_employee(empId).memberId pay_date = datetime.date(2001, 11, 16) AddServiceCharge(mId, pay_date, 10, db).execute() pt = Payday(pay_date, db) pt.execute() pc = pt.get_paycheck(empId) assert pc.gross_pay == 1000 print pc.deductions assert pc.deductions == 109.42 assert pc.net_pay == 1000 - 109.42
def test_removing_affiliations_from_employee(): db = MemoryDB() empId = AddHourlyEmployee("Jim", "Home", 12.25, db).execute() ChangeUnionMember(empId, 99.42, db).execute() cut = ChangeUnaffiliated(empId, db) cut.execute() e = db.get_employee(empId) assert isinstance(e.affiliation, NoAffiliation) try: db.get_union_member(e.memberId) raise "member not deleted" except KeyError: pass
def test_removing_affiliations_from_employee(): db = MemoryDB() empId = AddHourlyEmployee("Jim", "Home", 12.25, db).execute() ChangeUnionMember(empId, 99.42, db).execute() cut = ChangeUnaffiliated(empId, db) cut.execute() e = db.get_employee(empId) assert isinstance(e.affiliation, NoAffiliation) try: db.get_union_member(e.memberId) raise "member not deleted" except KeyError: pass
def test_changing_an_address_of_an_employee(): db = MemoryDB() empId = AddHourlyEmployee("Bohn", "wrong", 1, db).execute() cc = ChangeCommissioned(empId, 2.5, 1000, db) cc.execute() e = db.get_employee(empId) pc = e.classification assert isinstance(pc, CommissionedClassification) assert pc.baseRate == 1000 assert pc.commission == 2.5 ps = e.schedule assert isinstance(ps, BiWeeklySchedule)
def test_adding_an_hourly_paid_employee(): db = MemoryDB() at = AddHourlyEmployee("John", "Home", 15.75, db) empId = at.execute() e = db.get_employee(empId) assert e is not None assert e.id == empId assert e.name == "John" assert e.address == "Home" pc = e.classification assert isinstance(pc, HourlyClassification) assert pc.hourly_rate == 15.75 ps = e.schedule assert isinstance(ps, WeeklySchedule) pm = e.method assert isinstance(pm, HoldMethod)
def test_adding_a_time_card(): db = MemoryDB() t = AddHourlyEmployee("Bill", "Home", 15.25, db) empId = t.execute() date = datetime.date(2005, 3, 30) tct = AddTimeCard(empId, date, 8.0, db) tct.execute() e = db.get_employee(empId) assert e is not None pc = e.classification assert isinstance(pc, HourlyClassification) tc = pc.get_time_card(date) assert tc.hours == 8.0 assert tc.date == date
def test_adding_a_time_card(): db = MemoryDB() t = AddHourlyEmployee("Bill", "Home", 15.25, db) empId = t.execute() date = datetime.date(2005, 3, 30) tct = AddTimeCard(empId, date, 8.0, db) tct.execute() e = db.get_employee(empId) assert e is not None pc = e.classification assert isinstance(pc, HourlyClassification) tc = pc.get_time_card(date) assert tc.hours == 8.0 assert tc.date == date
def test_adding_a_sales_receipt(): db = MemoryDB() t = AddCommissionedEmployee("John", "Home", 5.0, 1500, db) empId = t.execute() date = datetime.date(2005, 3, 30) srt = AddSalesReceipt(empId, date, 500, db) srt.execute() e = db.get_employee(empId) assert e is not None pc = e.classification assert isinstance(pc, CommissionedClassification) srs = pc.get_sales_receipts() assert srs[0].amount == 500 assert srs[0].date == date
def test_adding_a_sales_receipt(): db = MemoryDB() t = AddCommissionedEmployee("John", "Home", 5.0, 1500, db) empId = t.execute() date = datetime.date(2005, 3, 30) srt = AddSalesReceipt(empId, date, 500, db) srt.execute() e = db.get_employee(empId) assert e is not None pc = e.classification assert isinstance(pc, CommissionedClassification) srs = pc.get_sales_receipts() assert srs[0].amount == 500 assert srs[0].date == date
def test_adding_an_employee_paid_by_salary(): db = MemoryDB() t = AddSalariedEmployee("Jim", "Work", 2000.0, db) empId = t.execute() e = db.get_employee(empId) assert e.name, "Jim" assert e.address, "Work" pc = e.classification assert isinstance(pc, SalariedClassification) assert pc.salary == 2000.0 ps = e.schedule assert isinstance(ps, MonthlySchedule) pm = e.method assert isinstance(pm, HoldMethod)
def test_adding_an_employee_paid_by_salary(): db = MemoryDB() t = AddSalariedEmployee("Jim", "Work", 2000.0, db) empId = t.execute() e = db.get_employee(empId) assert e.name, "Jim" assert e.address, "Work" pc = e.classification assert isinstance(pc, SalariedClassification) assert pc.salary == 2000.0 ps = e.schedule assert isinstance(ps, MonthlySchedule) pm = e.method assert isinstance(pm, HoldMethod)
def test_adding_an_employee_paid_by_commission(): db = MemoryDB() t = AddCommissionedEmployee("Sorro", "Firm", 5.0, 1000, db) empId = t.execute() e = db.get_employee(empId) assert e.name == "Sorro" assert e.address == "Firm" pc = e.classification assert isinstance(pc, CommissionedClassification) assert pc.commission == 5.0 assert pc.baseRate == 1000 ps = e.schedule assert isinstance(ps, BiWeeklySchedule) pm = e.method assert isinstance(pm, HoldMethod)
def test_adding_an_employee_paid_by_commission(): db = MemoryDB() t = AddCommissionedEmployee("Sorro", "Firm", 5.0, 1000, db) empId = t.execute() e = db.get_employee(empId) assert e.name == "Sorro" assert e.address == "Firm" pc = e.classification assert isinstance(pc, CommissionedClassification) assert pc.commission == 5.0 assert pc.baseRate == 1000 ps = e.schedule assert isinstance(ps, BiWeeklySchedule) pm = e.method assert isinstance(pm, HoldMethod)