示例#1
0
        public void CupTypeLarge()
        {
            var cupType = BeverageBuilder.StartBrew()
                          .CoffeeType(BeverageTypes.BeverageType.Latte)
                          .SelectCup(CupTypes.CupType.Large)
                          .ChooseBeans(BeanTypes.BeanType.Arabica)
                          .GrindBean()
                          .BoilWater()
                          .AddIngredient()
                          .ToBeverage();

            Assert.AreEqual(CupTypes.CupType.Large, cupType.CupSize);
        }
示例#2
0
        public void CupTypeFalse()
        {
            var cupTypeFail = BeverageBuilder.StartBrew()
                              .CoffeeType(BeverageTypes.BeverageType.Latte)
                              .SelectCup(CupTypes.CupType.Small)
                              .ChooseBeans(BeanTypes.BeanType.Arabica)
                              .GrindBean()
                              .BoilWater()
                              .AddIngredient()
                              .ToBeverage();

            Assert.IsFalse(CupTypes.CupType.Medium == cupTypeFail.CupSize);
        }
示例#3
0
        public void BoiledWaterAmericanoFalse()
        {
            var water = BeverageBuilder.StartBrew()
                        .CoffeeType(BeverageTypes.BeverageType.Americano)
                        .SelectCup(CupTypes.CupType.Small)
                        .ChooseBeans(BeanTypes.BeanType.Robusta)
                        .GrindBean()
                        .BoilWater()
                        .AddIngredient()
                        .ToBeverage();

            Assert.IsFalse(0 == water.Water);
        }
示例#4
0
        public void BoiledWaterMediumCup()
        {
            var water = BeverageBuilder.StartBrew()
                        .CoffeeType(BeverageTypes.BeverageType.Mocha)
                        .SelectCup(CupTypes.CupType.Medium)
                        .ChooseBeans(BeanTypes.BeanType.Robusta)
                        .GrindBean()
                        .BoilWater()
                        .AddIngredient()
                        .ToBeverage();

            Assert.AreEqual(12, water.Water);
        }
示例#5
0
        public void BoiledWaterLargeCupAmericano()
        {
            var water = BeverageBuilder.StartBrew()
                        .CoffeeType(BeverageTypes.BeverageType.Americano)
                        .SelectCup(CupTypes.CupType.Large)
                        .ChooseBeans(BeanTypes.BeanType.Robusta)
                        .GrindBean()
                        .BoilWater()
                        .AddIngredient()
                        .ToBeverage();

            Assert.AreEqual(24, water.Water);
        }
示例#6
0
        public void BeanAmountFalse()
        {
            var bean = BeverageBuilder.StartBrew()
                       .CoffeeType(BeverageTypes.BeverageType.Espresso)
                       .SelectCup(CupTypes.CupType.Small)
                       .ChooseBeans(BeanTypes.BeanType.Robusta)
                       .GrindBean()
                       .BoilWater()
                       .AddIngredient()
                       .ToBeverage();

            Assert.IsFalse(100 == bean.BeanAmount);
        }
示例#7
0
        public void BeanAmountLarge()
        {
            var bean = BeverageBuilder.StartBrew()
                       .CoffeeType(BeverageTypes.BeverageType.Espresso)
                       .SelectCup(CupTypes.CupType.Large)
                       .ChooseBeans(BeanTypes.BeanType.Robusta)
                       .GrindBean()
                       .BoilWater()
                       .AddIngredient()
                       .ToBeverage();

            Assert.AreEqual(8, bean.BeanAmount);
        }
示例#8
0
        public void BeanTypeFalse()
        {
            var bean = BeverageBuilder.StartBrew()
                       .CoffeeType(BeverageTypes.BeverageType.Macchiato)
                       .SelectCup(CupTypes.CupType.Small)
                       .ChooseBeans(BeanTypes.BeanType.Arabica)
                       .GrindBean()
                       .BoilWater()
                       .AddIngredient()
                       .ToBeverage();

            Assert.IsFalse(BeanTypes.BeanType.Robusta == bean.Bean);
        }
示例#9
0
        public void CheckIngredientsMocha()
        {
            var ingredient = (Mocha)BeverageBuilder.StartBrew()
                             .CoffeeType(BeverageTypes.BeverageType.Mocha)
                             .SelectCup(CupTypes.CupType.Medium)
                             .ChooseBeans(BeanTypes.BeanType.Robusta)
                             .GrindBean()
                             .BoilWater()
                             .AddIngredient()
                             .ToBeverage();

            Assert.AreEqual(ingredient.Milk, 24);
            Assert.AreEqual(ingredient.ChocolateSyrup, 12);
        }
示例#10
0
        //Checking parent
        public void InstanceTest()
        {
            var cappuccino = BeverageBuilder.
                             StartBrew()
                             .CoffeeType(BeverageTypes.BeverageType.Cappuccino)
                             .SelectCup(CupTypes.CupType.Large)
                             .ChooseBeans(BeanTypes.BeanType.Arabica)
                             .GrindBean()
                             .BoilWater()
                             .AddIngredient()
                             .ToBeverage();

            Assert.IsInstanceOfType(cappuccino, typeof(Espresso));
        }
示例#11
0
        public void CheckIngredientsCustom()
        {
            var ingredient = (Custom)BeverageBuilder.StartBrew()
                             .CoffeeType(BeverageTypes.BeverageType.Custom)
                             .SelectCup(CupTypes.CupType.Small)
                             .ChooseBeans(BeanTypes.BeanType.Robusta)
                             .GrindBean()
                             .BoilWater()
                             .AddIngredient(10, 20, 30)
                             .ToBeverage();

            Assert.AreEqual(ingredient.Milk, 10);
            Assert.AreEqual(ingredient.MilkFoam, 20);
            Assert.AreEqual(ingredient.ChocolateSyrup, 30);
        }
示例#12
0
        //Checking child
        public void InstanceTest2()
        {
            var cappuccino = BeverageBuilder.
                             StartBrew()
                             .CoffeeType(BeverageTypes.BeverageType.Cappuccino)
                             .SelectCup(CupTypes.CupType.Large)
                             .ChooseBeans(BeanTypes.BeanType.Arabica)
                             .GrindBean()
                             .BoilWater()
                             .AddIngredient()
                             .ToBeverage();

            //If you change typeof below to Macchiato, test will fail.
            Assert.IsInstanceOfType(cappuccino, typeof(Capuccino));
        }
示例#13
0
        public void Check_Ingredients_Macchiato_Ignoring_Parameters()
        {
            var ingredient = (Macchiato)BeverageBuilder.StartBrew()
                             .CoffeeType(BeverageTypes.BeverageType.Macchiato)
                             .SelectCup(CupTypes.CupType.Medium)
                             .ChooseBeans(BeanTypes.BeanType.Robusta)
                             .GrindBean()
                             .BoilWater()
                             //The only beverage that actually can take parameters is Custom.
                             //This Assert will pass, because a Macchiato has its predefined ingredients based on cupsize.
                             //Therefore our program will ignore the parameter values below.
                             .AddIngredient(100, 100, 100)
                             .ToBeverage();

            Assert.AreEqual(ingredient.MilkFoam, 36);
        }