Example #1
0
        static void Main(string[] args)
        {
            Beverage beverage = new Espresso();

            beverage = new Сaramel(beverage);
            Console.WriteLine(beverage.info());

            Beverage beverage1 = new Espresso();

            beverage1 = new Сaramel(beverage1);
            beverage1 = new Сaramel(beverage1);
            Console.WriteLine(beverage1.info());

            Beverage beverage2 = new DarkRoast();

            beverage2 = new Whip(beverage2);
            beverage2 = new Mocha(beverage2);
            beverage2 = new Mocha(beverage2);
            beverage2 = new Discount(beverage2);
            Console.WriteLine(beverage2.info());

            Beverage beverage3 = new HouseBlend();

            beverage3 = new Soy(beverage3);
            beverage3 = new Mocha(beverage3);
            beverage3 = new Whip(beverage3);
            beverage3 = new Soy(beverage3);
            Console.WriteLine(beverage3.info());

            Beverage beverage4 = new IceTea();

            beverage4 = new Сaramel(beverage4);
            Console.WriteLine(beverage4.info());
        }
Example #2
0
        public override IDrink GetDrink(AcuCafeEnum.EnumDrinks drinkDescription)
        {
            IDrink oDrink;

            try
            {
                switch (drinkDescription)
                {
                case AcuCafeEnum.EnumDrinks.TEA:
                    oDrink = new Tea();
                    break;

                case AcuCafeEnum.EnumDrinks.ICETEA:
                    oDrink = new IceTea();
                    break;

                default:
                    throw new Exception("Undefine Drink. We can not manage the order.");
                }
                return(oDrink);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Example #3
0
        public void IceTeaNoToppingsCostTest()
        {
            //Arrange
            var iceTea = new IceTea(false);

            //Act
            var cost = iceTea.Cost();

            //Assert
            Assert.AreEqual(1.5, cost, nameof(iceTea.Cost));
        }
Example #4
0
        public void IceTeaWithToppingsCostTest()
        {
            //Arrange
            var iceTea = new IceTea(true);

            //Act
            var cost = iceTea.Cost();

            //Assert
            Assert.AreEqual(2.0, cost, nameof(iceTea.Cost));
        }
Example #5
0
        public void PrepareIceTea()
        {
            var iceTea = new IceTea();

            iceTea.Prepare();
        }