void _renewMembershipView_RenewMembership(object sender, EventArgs e) { var member = _tempDataRepository.GetMemberValues(); var nationalFitnessResultsDto = _nationalFitnessGateway.VerifyMember(member); if (!nationalFitnessResultsDto.IsVerified) { _renewMembershipView.Message = ApplicationConstants.NATIONAL_FITNESS_MEMBERSHIP_NOT_VERIFIED; return; } var isPaid = _ccProcessingGateway.PayDuesByMembershipId(member.GymMembershipId); if (!isPaid) { _renewMembershipView.Message = ApplicationConstants.CC_CHARGES_NOT_APPROVED; return; } _memberRepository.SaveMember(member); _renewMembershipView.Message = ApplicationConstants.FormatApprovalMessageForMember(member, isPaid); }
public void RenewMembershipEvent_MemberInput_InstructsToGoToNextView() { // define out expectations (of how the Presenter will coordinate the interfaces _renewMembershipView.Initialize += null; LastCall.IgnoreArguments(); _renewMembershipView.RenewMembership += null; var renewMembershipEvent = LastCall.IgnoreArguments().GetEventRaiser(); const string firstName = "Sally"; const string lastName = "Wong"; const string gymMembershipId = "AB1234"; var member = new Member { FirstName = firstName, LastName = lastName, GymMembershipId = gymMembershipId }; Expect.Call(_tempDataRepository.GetMemberValues()).Return(member); var nationalFitnessResultsDto = new NationalFitnessResultsDTO { IsVerified = true }; Expect.Call(_nationalFitnessGateway.VerifyMember(member)).Return(nationalFitnessResultsDto); const bool isPaid = true; Expect.Call(_ccProcessingGateway.PayDuesByMembershipId(member.GymMembershipId)).Return(isPaid); _memberRepository.SaveMember(member); _renewMembershipView.Message = ApplicationConstants.FormatApprovalMessageForMember(member, isPaid); _mockRepository.ReplayAll(); var sut = new RenewMembershipPresenter(_tempDataRepository, _nationalFitnessGateway, _ccProcessingGateway, _memberRepository, _renewMembershipView); renewMembershipEvent.Raise(_renewMembershipView, EventArgs.Empty); _mockRepository.VerifyAll(); }