public void ApplyOffer_WhenCanBeApplied_AppliesOfferCorrectly(int numApps, double origPrice, double offerPrice, double initTotal, double expected)
        {
            // Arrange
            var subject = new OfferBaseTest(true, numApps, origPrice, offerPrice);

            // Act
            var result = subject.ApplyDiscount(basket, initTotal);

            // Assert
            Assert.AreEqual(expected, result);
        }
        public void ApplyOffer_WhenOfferCannotBeApplied_ReturnsInitialTotal()
        {
            // Arrange
            var initTotal = 100d;
            var subject   = new OfferBaseTest(false, 0, 10, 5);

            // Act
            var result = subject.ApplyDiscount(basket, initTotal);

            // Assert
            Assert.AreEqual(initTotal, result);
        }