Esempio n. 1
0
        public void RateIsCorrect(int expected)
        {
            var     sut    = new VatVisitor(expected);
            decimal actual = sut.Rate;

            Assert.Equal(expected, actual);
        }
Esempio n. 2
0
        public void SutIsBasketVisitor()
        {
            var dummyRate = .25m;
            var sut       = new VatVisitor(dummyRate);

            Assert.IsAssignableFrom <IBasketVisitor>(sut);
        }
Esempio n. 3
0
        public void DefaultAmountIsCorrect()
        {
            var     dummyRate = .25m;
            var     sut       = new VatVisitor(dummyRate);
            decimal actual    = sut.Amount;

            Assert.Equal(0, actual);
        }
Esempio n. 4
0
        public void RateIsCorrectFromConstructorWithAmount(int expected)
        {
            var dummyAmount = 1;
            var sut         = new VatVisitor(expected, dummyAmount);

            var actual = sut.Rate;

            Assert.Equal(expected, actual);
        }
Esempio n. 5
0
        public void AmountIsCorrect(int expected)
        {
            var dummyRate = .25m;
            var sut       = new VatVisitor(dummyRate, expected);

            var actual = sut.Amount;

            Assert.Equal(expected, actual);
        }
Esempio n. 6
0
        public void SutYieldsCorrectResult(int expected)
        {
            var dummyRate = 0.2m;
            var sut       = new VatVisitor(dummyRate, expected);

            var v = Assert.IsAssignableFrom <Vat>(sut.Single());

            Assert.Equal <decimal>(expected, v);
            Assert.Equal <decimal>(expected, sut.OfType <Vat>().Single());
        }
Esempio n. 7
0
        public void VisitBasketTotalReturnsCorrectResult(
            int rate,
            int amount)
        {
            var sut = new VatVisitor(rate, amount);

            var actual = sut.Visit(new BasketTotal(42));

            var v = Assert.IsAssignableFrom <VatVisitor>(actual);

            Assert.Equal(rate, v.Rate);
            Assert.Equal(amount, v.Amount);
        }
Esempio n. 8
0
        public void VisitDiscountReturnsCorrectResult(
            int rate,
            int amount,
            int discountAmount)
        {
            var sut = new VatVisitor(rate, amount);

            var actual = sut.Visit(new Discount(discountAmount));

            var v = Assert.IsAssignableFrom <VatVisitor>(actual);

            Assert.Equal(rate, v.Rate);
            Assert.Equal(
                amount - discountAmount * rate,
                v.Amount);
        }
Esempio n. 9
0
        public void VisitBasketItemReturnsCorrectResult(
            int rate,
            int amount,
            int unitPrice,
            int quantity)
        {
            var sut        = new VatVisitor(rate, amount);
            var basketItem =
                new BasketItem("Dummy", unitPrice, quantity);

            var actual = sut.Visit(basketItem);

            var v = Assert.IsAssignableFrom <VatVisitor>(actual);

            Assert.Equal(
                amount + basketItem.Total * rate,
                v.Amount);
            Assert.Equal(rate, v.Rate);
        }