예제 #1
0
        public void GetTotalPrice_ForTwoItemB_Returns45()
        {
            //Arrange
            var sut = new Checkout.Checkout();

            //Act
            sut.Scan("B");
            sut.Scan("B");
            var result = sut.GetTotalPrice();

            //Assert
            Assert.That(result, Is.EqualTo(45));
        }
예제 #2
0
        public void When_TheTotalIsRequestedItReturnsTheTotalAmount()
        {
            //--ARRANGE--
            var checkout = new Checkout.Checkout();

            checkout.Scan("A");
            checkout.Scan("B");

            //--ACT--
            var total = checkout.GetTotalPrice();

            //--ASSERT--
            Assert.True(total > 0);
        }
예제 #3
0
        public void GetTotalPrice_ForThreeItemA_Returns130()
        {
            //Arrange
            var sut = new Checkout.Checkout();

            //Act
            sut.Scan("A");
            sut.Scan("A");
            sut.Scan("A");
            var result = sut.GetTotalPrice();

            //Assert
            Assert.That(result, Is.EqualTo(130));
        }
예제 #4
0
        public void GetTotalPrice_ForOneOfEachItem_Returns115()
        {
            //Arrange
            var sut = new Checkout.Checkout();

            //Act
            sut.Scan("A");
            sut.Scan("B");
            sut.Scan("C");
            sut.Scan("D");
            var result = sut.GetTotalPrice();

            //Assert
            Assert.That(result, Is.EqualTo(115));
        }
예제 #5
0
        public void When_AnOfferISAvailableItShouldBeApplied()
        {
            //--ARRANGE--
            var checkout = new Checkout.Checkout();

            checkout.Scan("B");
            checkout.Scan("A");
            checkout.Scan("B");

            //--ACT--
            var total = checkout.GetTotalPrice();

            //--ASSERT--
            Assert.True(total > 0);
            Assert.Equal(95, total);
        }
예제 #6
0
        public void When_AnItemIsScannedItIsAddedToTheBasket()
        {
            //--ARRANGE--
            var checkout = new Checkout.Checkout();

            //--ACT--
            checkout.Scan("A");

            //--ASSERT--
            Assert.True(checkout.Basket.Items.Any());
        }