Exemplo n.º 1
0
        public void TestAllToppings()
        {
            //Arrange
            string test          = "test";
            string prepareString = $"We are preparing the following drink for you: {test} with milk with sugar with chocolate";

            var mockDrink = mockRepository.Create <IDrink>();

            mockDrink.SetupGet(m => m.HasSugar).Returns(true);
            mockDrink.SetupGet(m => m.Description).Returns(test);

            var mockMilk = mockDrink.As <IMilkDrink>();

            mockMilk.SetupGet(m => m.HasMilk).Returns(true);

            var mockChoco = mockMilk.As <IChocolateDrink>();

            mockChoco.SetupGet(m => m.HasChocolate).Returns(true);

            mockLogger.Setup(m => m.WriteToConsole(prepareString));

            //Act
            Preparer.Prepare(mockChoco.Object);

            //Assert
            mockLogger.Verify(m => m.WriteToConsole(prepareString), Times.Once);
        }