public void PromotionEngine_With_Scenario_C() { SimplePromotionEngine.Providers.PromotionEngine promotionEngine = new SimplePromotionEngine.Providers.PromotionEngine(); var invalidProducts = new List <char> { 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B', 'C', 'D' }; var total = promotionEngine.ApplyPromotion(invalidProducts); Assert.IsTrue(total == 280); }
//[ExpectedException(typeof(Exception))] Ideal way of writing unit test for exception cases // Here we are going to have try catch block for better understanding public void PromotionEngine_Is_Valid_Product() { try { SimplePromotionEngine.Providers.PromotionEngine promotionEngine = new SimplePromotionEngine.Providers.PromotionEngine(); var invalidProducts = new List <char> { 'Z', 'A' }; promotionEngine.ApplyPromotion(invalidProducts); } catch (Exception ex) { Assert.AreEqual("Cart contains invalid product(s)", ex.Message); } }