public void FailIfSinglePaymentIdDoesntExistInRepository() { List <IField> emptyFields = new List <IField>(); NumberField field = new NumberField("Monto"); emptyFields.Add(field); IField filledField = field.FillAndClone("100"); List <IField> fullFields = new List <IField>(); fullFields.Add(filledField); Provider provider = new Provider("Antel", 3, emptyFields); Receipt receipt = new Receipt(provider, fullFields, 100); List <Receipt> list = new List <Receipt>(); list.Add(receipt); Payment payment = new Payment(new CashPayMethod(DateTime.Now), 100, list); var mockPaymentService = new Mock <IPaymentService>(); mockPaymentService.Setup(x => x.GetSinglePayment(payment.ID + 1)).Throws(new ArgumentOutOfRangeException()); PaymentsController controller = new PaymentsController(mockPaymentService.Object); IHttpActionResult actionResult = controller.GetPayment(payment.ID + 1); Assert.IsInstanceOfType(actionResult, typeof(NotFoundResult)); }
public void FailIfPostedNewPaymentIsAlreadyInRepository() { List <IField> emptyFields = new List <IField>(); NumberField field = new NumberField("Monto"); emptyFields.Add(field); IField filledField = field.FillAndClone("100"); List <IField> fullFields = new List <IField>(); fullFields.Add(filledField); Provider provider = new Provider("Antel", 3, emptyFields); Receipt receipt = new Receipt(provider, fullFields, 100); List <Receipt> list = new List <Receipt>(); list.Add(receipt); Payment payment = new Payment(new CashPayMethod(DateTime.Now), 100, list); var mockPaymentService = new Mock <IPaymentService>(); mockPaymentService.Setup(x => x.CreatePayment(payment)).Throws(new ArgumentException()); PaymentsController controller = new PaymentsController(mockPaymentService.Object); IHttpActionResult actionResult = controller.PostPayment(payment); Assert.IsInstanceOfType(actionResult, typeof(BadRequestErrorMessageResult)); }
public void BeAbleToReturnASinglePaymentInRepository() { List <IField> emptyFields = new List <IField>(); NumberField field = new NumberField("Monto"); emptyFields.Add(field); IField filledField = field.FillAndClone("100"); List <IField> fullFields = new List <IField>(); fullFields.Add(filledField); Provider provider = new Provider("Antel", 3, emptyFields); Receipt receipt = new Receipt(provider, fullFields, 100); List <Receipt> list = new List <Receipt>(); list.Add(receipt); Payment payment = new Payment(new CashPayMethod(DateTime.Now), 100, list); var mockPaymentService = new Mock <IPaymentService>(); mockPaymentService.Setup(x => x.GetSinglePayment(payment.ID)).Returns(payment); PaymentsController controller = new PaymentsController(mockPaymentService.Object); IHttpActionResult actionResult = controller.GetPayment(payment.ID); OkNegotiatedContentResult <Payment> contentResult = (OkNegotiatedContentResult <Payment>)actionResult; Assert.AreSame(contentResult.Content, payment); }
public void TellItIsNotValidWhenItStoresANumberSmallerOrEqualToZero() { NumberField numberField = new NumberField("Monto"); IField newNumberField = numberField.FillAndClone("0"); Assert.IsFalse(newNumberField.IsValid()); }
public void TellItIsValidWhenItStoresANumberGreaterThanZero() { NumberField numberField = new NumberField("Monto"); IField newNumberField = numberField.FillAndClone("1"); Assert.IsTrue(newNumberField.IsValid()); }
public void ReturnANewNumberFieldWhenFilled() { NumberField numberField = new NumberField("Monto"); IField newNumberField = numberField.FillAndClone("15"); Assert.AreNotSame(numberField, newNumberField); }
public void BeAbleToTellItIsNotEqualToANullObject() { NumberField firstNumberField = new NumberField("Monto"); IField firstNewNumberField = firstNumberField.FillAndClone("2"); Assert.IsFalse(firstNewNumberField.Equals(null)); }
public void AllowToBeFilled() { NumberField numberField = new NumberField("Monto"); IField newNumberField = numberField.FillAndClone("15"); string expectedResult = "15"; Assert.AreEqual(expectedResult, newNumberField.GetData()); }
public void FailIfFieldsListHasCompletedField() { NumberField aNumberField = new NumberField("ID"); IField completedNumberField = aNumberField.FillAndClone("8000"); List <IField> completedFields = new List <IField>(); completedFields.Add(completedNumberField); Provider provider = new Provider("Antel", 20, completedFields); }
public void BeAbleToTellItIsNotEqualToAnotherNumberFieldWithSameNameButDifferentData() { NumberField firstNumberField = new NumberField("Monto"); NumberField secondNumberField = new NumberField("Monto"); IField firstNewNumberField = firstNumberField.FillAndClone("2"); IField secondNewNumberField = secondNumberField.FillAndClone("3"); Assert.IsFalse(firstNewNumberField.Equals(secondNewNumberField)); }
public void BeAbleToTellItIsEqualToAnotherNumberFieldWithSameNameAndData() { NumberField firstNumberField = new NumberField("Monto"); NumberField secondNumberField = new NumberField("Monto"); IField firstNewNumberField = firstNumberField.FillAndClone("2"); IField secondNewNumberField = secondNumberField.FillAndClone("2"); Assert.IsTrue(firstNewNumberField.Equals(secondNewNumberField)); }
public void BeAbleToTellItIsNotEqualToAnotherReceiptWithDifferentCompletedFieldsList() { List <IField> list = new List <IField>(); NumberField aNumberField = new NumberField("Coordenada X"); list.Add(aNumberField); Provider provider = new Provider("Antel", 20, list); double amount = 1000; IField firstCompletedNumberField = aNumberField.FillAndClone("8000"); IField secondCompletedNumberField = aNumberField.FillAndClone("5000"); List <IField> firstCompletedFields = new List <IField>(); firstCompletedFields.Add(firstCompletedNumberField); List <IField> secondCompletedFields = new List <IField>(); secondCompletedFields.Add(secondCompletedNumberField); Receipt firstReceipt = CreateReceipt(provider, firstCompletedFields, amount); Receipt secondReceipt = CreateReceipt(provider, secondCompletedFields, amount); Assert.AreNotSame(firstReceipt, secondReceipt); Assert.IsFalse(firstReceipt.Equals(secondReceipt)); }
private Payment CreatePayment() { IField providerEmptyField = new NumberField("Total"); Provider oneprovider = new Provider("Antel", 10, new[] { providerEmptyField }); IField providerCompleteField = providerEmptyField.FillAndClone("123456"); Receipt providerReceipt = new Receipt( oneprovider, new[] { providerCompleteField }, 1000); return(new Payment(new DebitPayMethod(DateTime.Today), 1000, new[] { providerReceipt })); }
private Receipt CreateNewReceipt() { List <IField> emptyFields = new List <IField>(); NumberField field = new NumberField("Monto"); emptyFields.Add(field); IField filledField = field.FillAndClone("100"); List <IField> fullFields = new List <IField>(); fullFields.Add(filledField); Provider provider = new Provider("Antel", 3, emptyFields); return(new Receipt(provider, fullFields, 100)); }
public void BeAbleToReturnAllPaymentsInRepository() { List <IField> emptyFields = new List <IField>(); NumberField field = new NumberField("Monto"); emptyFields.Add(field); IField firstFilledField = field.FillAndClone("100"); List <IField> firstFullFields = new List <IField>(); firstFullFields.Add(firstFilledField); IField secondFilledField = field.FillAndClone("101"); List <IField> secondFullFields = new List <IField>(); secondFullFields.Add(secondFilledField); Provider provider = new Provider("Antel", 3, emptyFields); Receipt firstReceipt = new Receipt(provider, firstFullFields, 100); Receipt secondReceipt = new Receipt(provider, secondFullFields, 100); List <Receipt> firstList = new List <Receipt>(); List <Receipt> secondList = new List <Receipt>(); firstList.Add(firstReceipt); secondList.Add(secondReceipt); var allPayments = new[] { new Payment(new CashPayMethod(DateTime.Now), 100, firstList), new Payment(new DebitPayMethod(DateTime.Now), 100, secondList) }; var mockPaymentService = new Mock <IPaymentService>(); mockPaymentService.Setup(x => x.GetAllPayments()).Returns(allPayments); PaymentsController controller = new PaymentsController(mockPaymentService.Object); IHttpActionResult actionResult = controller.GetPayments(); OkNegotiatedContentResult <IEnumerable <Payment> > contentResult = (OkNegotiatedContentResult <IEnumerable <Payment> >)actionResult; Assert.AreSame(contentResult.Content, allPayments); }
public void FailIfProviderIsNull() { List <IField> list = new List <IField>(); NumberField aNumberField = new NumberField("Coordenada X"); NumberField anotherNumberField = new NumberField("Coordenada Y"); list.Add(aNumberField); double amount = 10000; IField completedNumberField = anotherNumberField.FillAndClone("8000"); List <IField> completedFields = new List <IField>(); completedFields.Add(completedNumberField); Receipt receipt = CreateReceipt(null, completedFields, amount); }
public void FailIfCompletedFieldsAreNotTheSameAsProvidersFieldsIgnoringData() { List <IField> list = new List <IField>(); NumberField aNumberField = new NumberField("Coordenada X"); NumberField anotherNumberField = new NumberField("Coordenada Y"); list.Add(aNumberField); Provider provider = new Provider("Antel", 20, list); double amount = 10000; IField completedNumberField = anotherNumberField.FillAndClone("8000"); List <IField> completedFields = new List <IField>(); completedFields.Add(completedNumberField); Receipt receipt = CreateReceipt(provider, completedFields, amount); }
public void FailCreationIfProviderIsDeactivated() { List <IField> list = new List <IField>(); NumberField aNumberField = new NumberField("ID"); list.Add(aNumberField); Provider provider = new Provider("Antel", 20, list); provider.Active = false; IField completedNumberField = aNumberField.FillAndClone("8000"); List <IField> completedFields = new List <IField>(); completedFields.Add(completedNumberField); Receipt receipt = new Receipt(provider, completedFields, 0); }
public void BeAbleToTellIfItContainsCertainField() { List <IField> list = new List <IField>(); NumberField aNumberField = new NumberField("Coordenada X"); list.Add(aNumberField); Provider provider = new Provider("Antel", 20, list); double amount = 10000; IField completedNumberField = aNumberField.FillAndClone("8000"); List <IField> completedFields = new List <IField>(); completedFields.Add(completedNumberField); Receipt receipt = CreateReceipt(provider, completedFields, amount); Assert.IsTrue(receipt.ContainsField(completedNumberField)); }
public void BeAbleToTellItsProvider() { List <IField> list = new List <IField>(); NumberField aNumberField = new NumberField("ID"); list.Add(aNumberField); Provider provider = new Provider("Antel", 20, list); IField completedNumberField = aNumberField.FillAndClone("8000"); List <IField> completedFields = new List <IField>(); completedFields.Add(completedNumberField); Receipt receipt = new Receipt(provider, completedFields, 0); Assert.AreEqual(provider, receipt.ReceiptProvider); }
public void BeAbleToTellItIsNotEqualToAnotherTypeOfObject() { List <IField> list = new List <IField>(); NumberField aNumberField = new NumberField("Coordenada X"); list.Add(aNumberField); Provider provider = new Provider("Antel", 20, list); double amount = 10000; IField completedNumberField = aNumberField.FillAndClone("8000"); List <IField> completedFields = new List <IField>(); completedFields.Add(completedNumberField); Receipt firstReceipt = CreateReceipt(provider, completedFields, amount); Assert.IsFalse(firstReceipt.Equals(provider)); }
private Receipt CreateReceipt() { List <IField> emptyFieldList = new List <IField>(); NumberField aNumberField = new NumberField("Numerito"); emptyFieldList.Add(aNumberField); Provider provider = new Provider("Antel", 20, emptyFieldList); IField aCompleteNumberField = aNumberField.FillAndClone("1234"); List <IField> completeFieldList = new List <IField>(); completeFieldList.Add(aCompleteNumberField); double amount = 1500; return(new Receipt(provider, completeFieldList, amount)); }
public void KnowTheAmountToBePaid() { List <IField> list = new List <IField>(); NumberField aNumberField = new NumberField("Coordenada X"); list.Add(aNumberField); Provider provider = new Provider("Antel", 20, list); double amount = 10000; IField completedNumberField = aNumberField.FillAndClone("8000"); List <IField> completedFields = new List <IField>(); completedFields.Add(completedNumberField); Receipt receipt = new Receipt(provider, completedFields, amount); Assert.AreEqual(amount, receipt.Amount); }
private Payment CreateNewPayment() { List <IField> emptyFields = new List <IField>(); NumberField field = new NumberField("Monto"); emptyFields.Add(field); IField filledField = field.FillAndClone("100"); List <IField> fullFields = new List <IField>(); fullFields.Add(filledField); Provider provider = new Provider("Antel", 3, emptyFields); Receipt receipt = new Receipt(provider, fullFields, 100); List <Receipt> list = new List <Receipt>(); list.Add(receipt); return(new Payment(new CashPayMethod(DateTime.Today), 100, list)); }
public void HaveTheNecessaryCompletedFields() { List <IField> list = new List <IField>(); DateField datefield = new DateField("Fecha"); NumberField numberField = new NumberField("Monto"); list.Add(numberField); list.Add(datefield); Provider provider = new Provider("Antel", 20, list); IField completedDateField = datefield.FillAndClone("2012-09-17T22:02:51Z"); IField completedNumberField = numberField.FillAndClone("8000"); List <IField> completedFields = new List <IField>(); completedFields.Add(completedDateField); completedFields.Add(completedNumberField); Receipt receipt = new Receipt(provider, completedFields, 0); }
public void BeAbleToTellItIsEqualToAnotherReceiptWithTheSameFieldsAndData() { List <IField> list = new List <IField>(); NumberField aNumberField = new NumberField("Coordenada X"); list.Add(aNumberField); Provider provider = new Provider("Antel", 20, list); double amount = 10000; IField completedNumberField = aNumberField.FillAndClone("8000"); List <IField> completedFields = new List <IField>(); completedFields.Add(completedNumberField); Receipt firstReceipt = CreateReceipt(provider, completedFields, amount); Receipt secondReceipt = CreateReceipt(provider, completedFields, amount); Assert.AreNotSame(firstReceipt, secondReceipt); Assert.IsTrue(firstReceipt.Equals(secondReceipt)); }
public void BeAbleToCalculateHowMuchTodoPagosEarnsFromIt() { List <IField> list = new List <IField>(); NumberField aNumberField = new NumberField("Coordenada X"); list.Add(aNumberField); Provider provider = new Provider("Antel", 20, list); double amount = 10000; IField completedNumberField = aNumberField.FillAndClone("8000"); List <IField> completedFields = new List <IField>(); completedFields.Add(completedNumberField); Receipt receipt = new Receipt(provider, completedFields, amount); double expectedEarning = 2000; double obtainedEarning = receipt.CalculateEarnings(); Assert.AreEqual(expectedEarning, obtainedEarning); }
private Payment CreatePayment() { PayMethod paymentMethod = new DebitPayMethod(DateTime.Today); List <IField> emptyFieldList = new List <IField>(); NumberField aNumberField = new NumberField("Numerito"); emptyFieldList.Add(aNumberField); Provider provider = new Provider("Antel", 20, emptyFieldList); IField aCompleteNumberField = aNumberField.FillAndClone("1234"); List <IField> completeFieldList = new List <IField>(); completeFieldList.Add(aCompleteNumberField); double amount = 10000; Receipt receipt = new Receipt(provider, completeFieldList, amount); List <Receipt> receipts = new List <Receipt>(); receipts.Add(receipt); int amountPayed = 10000; return(new Payment(paymentMethod, amountPayed, receipts)); }
public void BeAbleToAddAllEarningsToExistingDictionaryOfEarningsPerProviderGivenFromAndToDates() { IDictionary <Provider, double> earningsPerProvider = new Dictionary <Provider, double>(); PayMethod paymentMethod = new DebitPayMethod(DateTime.Today); List <IField> emptyFieldList = new List <IField>(); NumberField aNumberField = new NumberField("Numerito"); emptyFieldList.Add(aNumberField); Provider provider = new Provider("Antel", 20, emptyFieldList); IField aCompleteNumberField = aNumberField.FillAndClone("1234"); List <IField> completeFieldList = new List <IField>(); completeFieldList.Add(aCompleteNumberField); double amount = 10000; Receipt receipt = new Receipt(provider, completeFieldList, amount); List <Receipt> receipts = new List <Receipt>(); receipts.Add(receipt); int amountPayed = 10000; Payment newPayment = new Payment(paymentMethod, amountPayed, receipts); IDictionary <Provider, double> expectedDictionary = new Dictionary <Provider, double>(); expectedDictionary.Add(provider, 2000); newPayment.AddThisPaymentsEarningsToDictionary(earningsPerProvider, DateTime.Today, DateTime.Today); bool result = true; foreach (KeyValuePair <Provider, double> pair in expectedDictionary) { if (!earningsPerProvider.Contains(pair)) { result = false; } } Assert.IsTrue(result); }
public void HavePositiveAmountPayed() { PayMethod paymentMethod = new DebitPayMethod(DateTime.Now); List <IField> emptyFieldList = new List <IField>(); NumberField aNumberField = new NumberField("Numerito"); emptyFieldList.Add(aNumberField); Provider provider = new Provider("Antel", 20, emptyFieldList); IField aCompleteNumberField = aNumberField.FillAndClone("1234"); List <IField> completeFieldList = new List <IField>(); completeFieldList.Add(aCompleteNumberField); double amount = 10000; Receipt receipt = new Receipt(provider, completeFieldList, amount); List <Receipt> receipts = new List <Receipt>(); receipts.Add(receipt); int amountPayed = -1000; Payment newPayment = new Payment(paymentMethod, amountPayed, receipts); }