Ejemplo n.º 1
0
 public void TestImmutabilityWhenChangingExpirationDate()
 {
     DiscountByDate original = new DiscountByDate(.1m, DateTime.Now);
     DiscountByDate verifier = new DiscountByDate(original);
     DiscountByDate extended = original.ExtendByDays(7);
     Assert.IsFalse(original.Equals(extended));
     Assert.IsTrue(original.Equals(verifier));
 }
Ejemplo n.º 2
0
 public void TestProductDiscountWithValidDiscountByDate()
 {
     ProductId prodOneId = new ProductId("1");
     Product prodOne = new Product(prodOneId, 10m);
     DiscountByDate discount = new DiscountByDate(.1m, DateTime.Now.AddDays(1));
     decimal discountedPrice = prodOne.DiscountPrice(discount);
     Assert.IsTrue(discountedPrice == 9m);
 }
Ejemplo n.º 3
0
 public DiscountByDate(DiscountByDate discount)
 {
     DiscountAmount = discount.DiscountAmount;
     ExpirationDate = discount.ExpirationDate;
 }
Ejemplo n.º 4
0
 public decimal DiscountPrice(DiscountByDate discount)
 {
     return(discount != null && discount.ExpirationDate > DateTime.Now
         ? Price - (Price * discount.DiscountAmount)
         : Price);
 }
Ejemplo n.º 5
0
 public DiscountByDate(DiscountByDate discount)
 {
     DiscountAmount = discount.DiscountAmount;
     ExpirationDate = discount.ExpirationDate;
 }
Ejemplo n.º 6
0
 public void VerifyExtendedDate()
 {
     DiscountByDate original = new DiscountByDate(.1m, DateTime.Now);
     DiscountByDate extended = original.ExtendByDays(7);
     Assert.IsTrue(extended.ExpirationDate == original.ExpirationDate.AddDays(7));
 }
Ejemplo n.º 7
0
 public void TestMatchSameValues()
 {
     DiscountByDate discount = new DiscountByDate(.1m, DateTime.Now);
     DiscountByDate identicalDiscount = new DiscountByDate(discount);
     Assert.IsTrue(discount.Equals(identicalDiscount));
 }
Ejemplo n.º 8
0
 public void TestMatchSameDateObject()
 {
     DiscountByDate discount = new DiscountByDate(.1m, DateTime.Now);
     Assert.IsTrue(discount.Equals(discount));
 }
Ejemplo n.º 9
0
 public void TestMatchDifferentValues()
 {
     DiscountByDate discount = new DiscountByDate(.1m, DateTime.Now);
     DiscountByDate differentDiscount = new DiscountByDate(.1m, DateTime.Today);
     Assert.IsFalse(discount.Equals(differentDiscount));
 }