public void TestChangeMemberAffiliationTransaction() { // Arrange var employeeId = 1; var employeeName = "Bogdan"; var employeeAddress = "Address"; var hourlyRate = 25; new AddHourlyEmployeeTransaction(employeeId, employeeName, employeeAddress, hourlyRate).Execute(); var memberId = 24; var dues = 92.42; // Act new ChangeEmployeeUnionAffiliationTransaction(employeeId, memberId, dues).Execute(); var employee = payrollRepository.GetEmployee(employeeId); var unionMember = payrollRepository.GetUnionMember(memberId); // Assert Assert.IsNotNull(employee); Assert.IsNotNull(unionMember); Assert.AreEqual(unionMember, employee); Assert.IsTrue(employee.Affiliation is UnionEmployeeAffiliation); Assert.AreEqual(dues, (employee.Affiliation as UnionEmployeeAffiliation).Dues); }