public void GivenAClubMemberWithADefaultPaymentMethod(Table clientsTable) { membersManagementContextData.clubMember = new ClubMember(clientsTable.Rows[0]["MemberID"], clientsTable.Rows[0]["Name"], clientsTable.Rows[0]["FirstSurname"], clientsTable.Rows[0]["SecondSurname"]); string electronicIBANString = clientsTable.Rows[0]["Spanish IBAN Bank Account"].Replace(" ","").Substring(4); InternationalAccountBankNumberIBAN iban = new InternationalAccountBankNumberIBAN(electronicIBANString); BankAccount bankAccount = new BankAccount(iban); string debtorName = membersManagementContextData.clubMember.FullName; DirectDebitMandate directDebitmandate = new DirectDebitMandate(2345, DateTime.Now.Date, bankAccount, debtorName); PaymentMethod paymentMethod = new DirectDebitPaymentMethod(directDebitmandate, null); membersManagementContextData.clubMember.AddDirectDebitMandate(directDebitmandate); membersManagementContextData.clubMember.SetDefaultPaymentMethod(paymentMethod); }
public void WhenTheBillIsPaidByDirectDebit() { Invoice invoice = (Invoice)ScenarioContext.Current["Invoice"]; Bill bill = (Bill)ScenarioContext.Current["Bill"]; int internalReferenceNumber = 2645; BankAccount bankAccount = new BankAccount(new ClientAccountCodeCCC("12345678061234567890")); DateTime directDebitMandateCreationDate = new DateTime(2013, 11, 11); string debtorname = membersManagementContextData.clubMember.FullName; DirectDebitMandate directDebitMandate = new DirectDebitMandate(internalReferenceNumber, directDebitMandateCreationDate, bankAccount, debtorname); string directDebitTransactionPaymentIdentification = "201311110000123456"; DirectDebitPaymentMethod directDebitPaymentMethod = new DirectDebitPaymentMethod(directDebitMandate, directDebitTransactionPaymentIdentification); DateTime paymentDate = new DateTime(2013, 11, 11); Payment payment = new Payment(bill.Amount, paymentDate, directDebitPaymentMethod); billsManager.PayBill(invoice, bill, payment); }
public void WhenIAssignToBePaidWithADirectDebit() { int internalReferenceNumber = 2645; BankAccount bankAccount = new BankAccount(new ClientAccountCodeCCC("12345678061234567890")); DateTime directDebitMandateCreationDate = new DateTime(2013, 11, 11); string debtorname = membersManagementContextData.clubMember.FullName; DirectDebitMandate directDebitMandate = new DirectDebitMandate(internalReferenceNumber, directDebitMandateCreationDate, bankAccount, debtorname); DirectDebitPaymentMethod directDebitPaymentMethod = new DirectDebitPaymentMethod(directDebitMandate, null); ScenarioContext.Current.Add("DirectDebitpaymentMethod", directDebitPaymentMethod); Invoice invoice = (Invoice)ScenarioContext.Current["Invoice"]; string billID= (string)ScenarioContext.Current["BillID"]; Bill bill = invoice.Bills[billID]; bill.AssignPaymentMethod(directDebitPaymentMethod); }
public void WhenISetDirectDebitAsNewPaymentMethod() { ClubMember clubMember = (ClubMember)ScenarioContext.Current["Member1"]; DirectDebitMandate directDebitMandate = directDebitContextData.directDebitMandates[2345]; DirectDebitPaymentMethod directDebitPaymentMethod = new DirectDebitPaymentMethod(directDebitMandate, null); ScenarioContext.Current.Add("DirectDebitPaymentMethod", directDebitPaymentMethod); clubMember.SetDefaultPaymentMethod(directDebitPaymentMethod); }
public void ADirectDebitPaymentMethodIsCorrectlyCreated() { int internalReferenceNumber = 2645; BankAccount bankAccount = new BankAccount(new ClientAccountCodeCCC("12345678061234567890")); DateTime directDebitMandateCreationDate = new DateTime(2013, 11, 11); DirectDebitMandate directDebitMandate = new DirectDebitMandate(internalReferenceNumber, directDebitMandateCreationDate, bankAccount, "NoName"); string directDebitTransactionPaymentIdentification = "201311110000123456"; DirectDebitPaymentMethod directDebitPaymentMethod = new DirectDebitPaymentMethod(directDebitMandate, directDebitTransactionPaymentIdentification); Assert.AreEqual(directDebitMandate, directDebitPaymentMethod.DirectDebitMandate); Assert.AreEqual("201311110000123456", directDebitPaymentMethod.DDTXPaymentIdentification); }
public void WhenABillIsPaidByDirectDebitTheDebtorAccountAndTheDirectDebitTransactionPaymentIdentificartionAreStored() { Bill bill = new Bill("MMM201300015/001", "An easy to pay bill", 1, DateTime.Now, DateTime.Now.AddYears(10)); int internalReferenceNumber = 2645; BankAccount bankAccount = new BankAccount(new ClientAccountCodeCCC("12345678061234567890")); DateTime directDebitMandateCreationDate = new DateTime(2013, 11, 11); DirectDebitMandate directDebitMandate = new DirectDebitMandate(internalReferenceNumber, directDebitMandateCreationDate, bankAccount, "NoName"); string directDebitTransactionPaymentIdentification = "201311110000123456"; DirectDebitPaymentMethod directDebitTransfermethod = new DirectDebitPaymentMethod(directDebitMandate, directDebitTransactionPaymentIdentification); DateTime paymentDate = new DateTime(2013, 11, 11); Payment payment = new Payment(bill.Amount, paymentDate, directDebitTransfermethod); bill.PayBill(payment); Assert.AreEqual("12345678061234567890", ((DirectDebitPaymentMethod)bill.Payment.PaymentMethod).DirectDebitMandate.BankAccount.CCC.CCC); Assert.AreEqual("201311110000123456", ((DirectDebitPaymentMethod)bill.Payment.PaymentMethod).DDTXPaymentIdentification); }