public void IssueDiscountBadPostTest() { var mock = new Mock<IDiscountService>(); discountTest.discountService = mock.Object; // create coupon coupon = User_DiscountTest.CreateCoupon(); // set DiscountCode to null coupon.DiscountCode = null; mock.Setup(mockObject => mockObject.CreateCoupon(coupon)).Returns(badCoupon); // cast ActionResult to JsonResult, pull data, cast to UserDiscount var json = ((JsonResult)discountTest.IssueDiscount(coupon)); // Assert.IsInstanceOfType(json, typeof(JsonResult)); }
/// <summary> /// Create and submit coupon /// </summary> /// <param name="coupon">Coupon without code</param> /// <returns>Coupon with code</returns> public UserDiscount CreateCoupon(UserDiscount coupon) { // generate five digit coupon code if (coupon.StartDate < coupon.EndDate && (coupon.DiscountRate > 0 && coupon.DiscountRate < 100)) { coupon.DiscountCode = couponUtility.GenerateCoupon(); using (var ctx = dbContext) { // add coupon to context var userCoupons = ctx.UserDiscounts().Add(coupon); // save changes to context (saves to DB!) ctx.SaveChanges(); } } return coupon; }
public ActionResult IssueDiscount(UserDiscount coupon) { // returns a coupon, hopefully with created date! UserDiscount returnedDiscount; if (this.ModelState.IsValid) { returnedDiscount = discountService.CreateCoupon(coupon); } else { returnedDiscount = coupon; } return Json(new { UserDiscountId = coupon.UserDiscountId, DiscountRate = coupon.DiscountRate, StartDate = coupon.StartDate, EndDate = coupon.EndDate, DiscountCode = coupon.DiscountCode, UserId = coupon.UserId, }); }
/// <summary> /// Set fields on all coupon objects /// </summary> /// <returns></returns> public static UserDiscount CreateCoupon() { UserDiscount coupon = new UserDiscount(); UserDiscountUtility udc = new UserDiscountUtility(); coupon.DiscountRate = 20; coupon.EndDate = DateTime.Now.AddDays(1); coupon.StartDate = DateTime.Now; coupon.UserDiscountId = 0; coupon.UserId = 10; coupon.Reedemed = false; coupon.DiscountCode = udc.GenerateCoupon(); return coupon; }
public void Setup() { discountTest = new DiscountController(); coupon = new UserDiscount(); badCoupon = User_DiscountTest.CreateCoupon(); badCoupon.DiscountCode = null; }
/// <summary> /// Mark Inputted coupon as redeemed. /// </summary> /// <returns>UserDisount</returns> /// <author>Paul Wroe</author> public virtual UserDiscount RedeemCoupon(UserDiscount coupon, out bool isSuccess) { isSuccess = false; // add coupon to context List<UserDiscount> userCoupon = GetCouponList(coupon); if (userCoupon.Count != 0) { var theCoupon = userCoupon[0]; theCoupon.Reedemed = true; dbContext.SaveChanges(); isSuccess = true; } return coupon; }
/// <summary> /// Returns a matching UserDiscount from the database /// </summary> /// <param name="coupon"></param> /// <returns></returns> public virtual List<UserDiscount> GetCouponList(UserDiscount coupon) { return dbContext.UserDiscounts().Where(p => p.UserDiscountId == coupon.UserDiscountId).ToList(); }
public void Setup() { couponList = new List<UserDiscount>(); discountService = (DiscountService)DiscountService.GetInstance(); userDiscount = User_DiscountTest.CreateCoupon(); couponList.Add(coupon); isSuccess = false; error = null; discountService.couponUtility = mockUserDiscountUtility.Object; discountService.dbContext = mockContext.Object; }