Exemple #1
0
        public void CannaOilCreation_MasterKushWash_MasterKushInWashingStage()
        {
            IChronic   GanjaTest    = new MasterKush();
            IContainer MasonJar     = new SmallMasonJar();
            IChemical  Butane       = new Benzene(1500);
            IContainer Trousers     = new CargoPants();
            IFilter    CoffeeFilter = new CoffeeFilter();

            Trousers.Add((IItem)MasonJar);
            Trousers.Add(Butane);

            for (int i = 0; i < GanjaTest.SeedingAge; i++)
            {
                GanjaTest.Grow(Water.Low, Light.None, Food.None);
            }

            for (int i = 0; i < GanjaTest.FloweringAge; i++)
            {
                GanjaTest.Grow(Water.Low, Light.Spring, Food.None);
            }

            for (int i = 0; i < 25; i++)
            {
                GanjaTest.Grow(Water.Medium, Light.Summer, Food.None);
            }

            var fullHarvest = GanjaTest.Harvest();
            var clone       = GanjaTest;
            var harvest     = fullHarvest.Harvest;
            var trimmings   = fullHarvest.Trimmings;

            for (int i = 0; i < harvest.DryingAge; i++)
            {
                harvest.Dry();
            }

            for (int i = 0; i < trimmings.DryingAge; i++)
            {
                trimmings.Dry();
            }

            harvest.Add(ref trimmings);

            ISolventMix firstSolventMix = new SolventMix(harvest, Butane);

            MasonJar.Add((IItem)firstSolventMix);

            firstSolventMix.Wash();

            var firstFilteredBatch = firstSolventMix.Filter(new CoffeeFilter());

            firstSolventMix.Print();
            var firstFilteredRemainingChronic = firstFilteredBatch.Chronic;

            firstFilteredRemainingChronic.Print();
            var firstFilteredSolvent = firstFilteredBatch.Solvent;

            Assert.IsInstanceOfType(firstSolventMix, typeof(ISolventMix));
        }
Exemple #2
0
        public void CannaOilCreation_NotEnoughChemicalForWash_ExpectedNotEnoughSolventException()
        {
            IChronic   GanjaTest    = new SilverHaze();
            IContainer MasonJar     = new SmallMasonJar();
            IChemical  Butane       = new Benzene(500);
            IContainer Trousers     = new CargoPants();
            IFilter    CoffeeFilter = new CoffeeFilter();

            Trousers.Add((IItem)MasonJar);
            Trousers.Add(Butane);

            for (int i = 0; i < GanjaTest.SeedingAge; i++)
            {
                GanjaTest.Grow(Water.Low, Light.None, Food.None);
            }

            for (int i = 0; i < GanjaTest.FloweringAge; i++)
            {
                GanjaTest.Grow(Water.Medium, Light.Spring, Food.Low);
            }

            for (int i = 0; i < 30; i++)
            {
                GanjaTest.Grow(Water.High, Light.Summer, Food.Low);
            }

            var fullHarvest = GanjaTest.Harvest();
            var clone       = GanjaTest;
            var harvest     = fullHarvest.Harvest;
            var trimmings   = fullHarvest.Trimmings;

            for (int i = 0; i < harvest.DryingAge; i++)
            {
                harvest.Dry();
            }

            for (int i = 0; i < trimmings.DryingAge; i++)
            {
                trimmings.Dry();
            }

            harvest.Add(ref trimmings);

            ISolventMix firstSolventMix = new SolventMix(harvest, Butane);

            MasonJar.Add((IItem)firstSolventMix);

            firstSolventMix.Wash();
        }
Exemple #3
0
        public void CannaOilCreation_SilverHazeCreateSolventMix_IsTypeOfSolventMix()
        {
            IChronic   GanjaTest    = new SilverHaze();
            IContainer MasonJar     = new SmallMasonJar();
            IChemical  Butane       = new Benzene(900);
            IContainer Trousers     = new CargoPants();
            IFilter    CoffeeFilter = new CoffeeFilter();

            Trousers.Add((IItem)MasonJar);
            Trousers.Add(Butane);

            for (int i = 0; i < GanjaTest.SeedingAge; i++)
            {
                GanjaTest.Grow(Water.Low, Light.None, Food.None);
            }

            for (int i = 0; i < GanjaTest.FloweringAge; i++)
            {
                GanjaTest.Grow(Water.Medium, Light.Spring, Food.Low);
            }

            for (int i = 0; i < 30; i++)
            {
                GanjaTest.Grow(Water.High, Light.Summer, Food.Low);
            }

            var fullHarvest = GanjaTest.Harvest();
            var clone       = GanjaTest;
            var harvest     = fullHarvest.Harvest;
            var trimmings   = fullHarvest.Trimmings;

            for (int i = 0; i < harvest.DryingAge; i++)
            {
                harvest.Dry();
            }

            for (int i = 0; i < trimmings.DryingAge; i++)
            {
                trimmings.Dry();
            }

            harvest.Add(ref trimmings);

            ISolventMix firstSolventMix = new SolventMix(harvest, Butane);

            Assert.IsInstanceOfType(firstSolventMix, typeof(ISolventMix));
        }
Exemple #4
0
        static void Main(string[] args)
        {
            IChronic   GanjaTest    = new SilverHaze();
            IContainer MasonJar     = new SmallMasonJar();
            IChemical  Butane       = new Benzene(1000);
            IContainer Trousers     = new CargoPants();
            IFilter    CoffeeFilter = new CoffeeFilter();

            Trousers.Add((IItem)MasonJar);
            Trousers.Add(Butane);

            for (int i = 0; i < GanjaTest.SeedingAge; i++)
            {
                PrintLine();
                GanjaTest.Grow(Water.Low, Light.None, Food.None);
                GanjaTest.Print();
                Console.WriteLine();
            }

            for (int i = 0; i < GanjaTest.FloweringAge; i++)
            {
                PrintLine();
                GanjaTest.Grow(Water.Medium, Light.Spring, Food.Low);
                GanjaTest.Print();
                Console.WriteLine();
            }

            for (int i = 0; i < 30; i++)
            {
                PrintLine();
                GanjaTest.Grow(Water.High, Light.Summer, Food.Low);
                GanjaTest.Print();
                Console.WriteLine();
            }

            var fullHarvest = GanjaTest.Harvest();
            var clone       = GanjaTest;
            var harvest     = fullHarvest.Harvest;
            var trimmings   = fullHarvest.Trimmings;

            for (int i = 0; i < harvest.DryingAge; i++)
            {
                PrintLine();
                harvest.Dry();
                harvest.Print();
                Console.WriteLine();
            }

            for (int i = 0; i < trimmings.DryingAge; i++)
            {
                PrintLine();
                trimmings.Dry();
                trimmings.Print();
                Console.WriteLine();
            }

            PrintLine();
            harvest.Add(ref trimmings);

            ISolventMix firstSolventMix = new SolventMix(harvest, Butane);

            MasonJar.Add((IItem)firstSolventMix);

            firstSolventMix.Wash();

            var firstFilteredBatch = firstSolventMix.Filter(new CoffeeFilter());

            firstSolventMix.Print();
            var firstFilteredRemainingChronic = firstFilteredBatch.Chronic;

            firstFilteredRemainingChronic.Print();
            var firstFilteredSolvent = firstFilteredBatch.Solvent;

            firstFilteredSolvent.Print();

            PrintLine();

            ISolventMix secondSolventMix = new SolventMix(firstFilteredRemainingChronic, new Benzene(1000));

            secondSolventMix.Wash(2);
            PrintLine();

            var secondFilteredSolvent = secondSolventMix.Filter(new CoffeeFilter()).Solvent;

            firstFilteredSolvent.Add(secondFilteredSolvent);
            for (int i = 0; i < 12; i++)
            {
                firstFilteredSolvent.Heat();
            }

            ICannaOil cannaOil = new CannaOil(firstFilteredSolvent, GanjaTest.Name);

            firstFilteredSolvent.Print();
            secondFilteredSolvent.Print();

            Console.WriteLine();
            Console.ReadLine();
        }
Exemple #5
0
        public void CannaOilCreation_MasterKushCannaOilValue_ValueIsNotNull()
        {
            IChronic   GanjaTest    = new MasterKush();
            IContainer MasonJar     = new SmallMasonJar();
            IChemical  Butane       = new Benzene(1500);
            IContainer Trousers     = new CargoPants();
            IFilter    CoffeeFilter = new CoffeeFilter();

            Trousers.Add((IItem)MasonJar);
            Trousers.Add(Butane);

            for (int i = 0; i < GanjaTest.SeedingAge; i++)
            {
                GanjaTest.Grow(Water.Low, Light.None, Food.None);
            }

            for (int i = 0; i < GanjaTest.FloweringAge; i++)
            {
                GanjaTest.Grow(Water.Low, Light.Spring, Food.None);
            }

            for (int i = 0; i < 25; i++)
            {
                GanjaTest.Grow(Water.Medium, Light.Summer, Food.None);
            }

            var fullHarvest = GanjaTest.Harvest();
            var clone       = GanjaTest;
            var harvest     = fullHarvest.Harvest;
            var trimmings   = fullHarvest.Trimmings;

            for (int i = 0; i < harvest.DryingAge; i++)
            {
                harvest.Dry();
            }

            for (int i = 0; i < trimmings.DryingAge; i++)
            {
                trimmings.Dry();
            }

            harvest.Add(ref trimmings);

            ISolventMix firstSolventMix = new SolventMix(harvest, Butane);

            MasonJar.Add((IItem)firstSolventMix);

            firstSolventMix.Wash();

            var firstFilteredBatch            = firstSolventMix.Filter(new CoffeeFilter());
            var firstFilteredRemainingChronic = firstFilteredBatch.Chronic;
            var firstFilteredSolvent          = firstFilteredBatch.Solvent;

            ISolventMix secondSolventMix = new SolventMix(firstFilteredRemainingChronic, new Benzene(1500));

            secondSolventMix.Wash(2);

            var secondFilteredSolvent = secondSolventMix.Filter(new CoffeeFilter()).Solvent;

            for (int i = 0; i < 12; i++)
            {
                firstFilteredSolvent.Heat();
                secondFilteredSolvent.Heat();
            }

            ICannaOil cannaOil   = new CannaOil(firstFilteredSolvent, GanjaTest.Name);
            ICannaOil cannaOilv2 = new CannaOil(secondFilteredSolvent, GanjaTest.Name);

            cannaOil.Add(cannaOilv2);

            Assert.IsTrue(cannaOil.Value != 0);
        }
Exemple #6
0
        public void CannaOilCreation_MasterKushHeatSolvent_ContentsAreZero()
        {
            IChronic   GanjaTest = new MasterKush();
            IContainer MasonJar  = new SmallMasonJar();
            // Needs extra chemical for test to pass.
            IChemical  Benzene      = new Benzene(1300);
            IContainer Trousers     = new CargoPants();
            IFilter    CoffeeFilter = new CoffeeFilter();

            Trousers.Add((IItem)MasonJar);
            Trousers.Add(Benzene);

            for (int i = 0; i < GanjaTest.SeedingAge; i++)
            {
                GanjaTest.Grow(Water.Low, Light.None, Food.None);
            }

            for (int i = 0; i < GanjaTest.FloweringAge; i++)
            {
                GanjaTest.Grow(Water.Low, Light.Spring, Food.None);
            }

            for (int i = 0; i < 25; i++)
            {
                GanjaTest.Grow(Water.Medium, Light.Summer, Food.None);
            }

            var fullHarvest = GanjaTest.Harvest();
            var clone       = GanjaTest;
            var harvest     = fullHarvest.Harvest;
            var trimmings   = fullHarvest.Trimmings;

            for (int i = 0; i < harvest.DryingAge; i++)
            {
                harvest.Dry();
                trimmings.Dry();
            }

            harvest.Add(ref trimmings);

            ISolventMix firstSolventMix = new SolventMix(harvest, Benzene);

            MasonJar.Add((IItem)firstSolventMix);

            firstSolventMix.Wash();

            var firstFilteredBatch = firstSolventMix.Filter(new CoffeeFilter());

            firstSolventMix.Print();
            var firstFilteredRemainingChronic = firstFilteredBatch.Chronic;

            firstFilteredRemainingChronic.Print();
            var firstFilteredSolvent = firstFilteredBatch.Solvent;

            firstFilteredSolvent.Print();

            // Again needs extra chemical to pass test.
            ISolventMix secondSolventMix = new SolventMix(firstFilteredRemainingChronic, new Benzene(1300));

            secondSolventMix.Wash(2);

            var secondFilteredSolvent = secondSolventMix.Filter(new CoffeeFilter()).Solvent;

            for (int i = 0; i < 15; i++)
            {
                firstFilteredSolvent.Heat();
                secondFilteredSolvent.Heat();
            }

            ICannaOil cannaOil = new CannaOil(firstFilteredSolvent, GanjaTest.Name);

            Assert.IsTrue(firstFilteredSolvent.Contents == 0);
            Assert.IsTrue(secondFilteredSolvent.Contents == 0);
        }
Exemple #7
0
        static void Main(string[] args)
        {
            Console.WriteLine("press 1 for Coffe \npress 2 for Tea \npress 3 for Espresso");
            string drinkChoice = Console.ReadLine();

            if (drinkChoice == "1")
            {
                CoffeeMachine cm         = new CoffeeMachine("MochaMaster");
                FillCoffee    fillCof    = new FillCoffee();
                BoilWater     boilwater  = new BoilWater();
                BrewingCoffee brewingCof = new BrewingCoffee();
                CoffeeBean    cb         = new CoffeeBean();
                CoffeeFilter  cf         = new CoffeeFilter();
                Water         water      = new Water();

                cm.TurnOn();
                Console.WriteLine();

                Console.WriteLine("How many cups of coffee would you like to brew?");
                water.cupsofwater = int.Parse(Console.ReadLine());
                Console.WriteLine();


                fillCof.FillWithWater(cm, water);
                Console.WriteLine();
                fillCof.FillWithTaste(cm, cb);
                Console.WriteLine();

                Console.WriteLine("Press ENTER to brew coffee");
                Console.ReadKey();
                Console.WriteLine();

                boilwater.Boil(water);
                Console.WriteLine();
                brewingCof.Brew(cm, water);

                cm.TurnOff();
            }
            else if (drinkChoice == "2")
            {
                CoffeeMachine cm         = new CoffeeMachine("TeaMaster");
                BoilWater     boilwater  = new BoilWater();
                TeaLeaf       tl         = new TeaLeaf();
                FillTea       filltea    = new FillTea();
                BrewingTea    brewingTea = new BrewingTea();
                Water         water      = new Water();

                cm.TurnOn();
                Console.WriteLine();

                Console.WriteLine("How many cups of tea would you like to brew?");
                water.cupsofwater = int.Parse(Console.ReadLine());
                Console.WriteLine();


                filltea.FillWithWater(cm, water);
                Console.WriteLine();
                filltea.FillWithTaste(cm, tl);
                Console.WriteLine();

                Console.WriteLine("Press ENTER to brew tea");
                Console.ReadKey();
                Console.WriteLine();

                boilwater.Boil(water);
                Console.WriteLine();
                brewingTea.Brew(cm, water);

                cm.TurnOff();
            }
            else if (drinkChoice == "3")
            {
                CoffeeMachine   cm         = new CoffeeMachine("MochaMaster");
                FillCoffee      fillCof    = new FillCoffee();
                BoilWater       boilwater  = new BoilWater();
                BrewingEspresso brewingEsp = new BrewingEspresso();
                CoffeeBean      cb         = new CoffeeBean();
                CoffeeFilter    cf         = new CoffeeFilter();
                Water           water      = new Water();
                Stamping        stamping   = new Stamping();

                cm.TurnOn();
                Console.WriteLine();

                Console.WriteLine("How many cups of espresso would you like to brew?");
                water.cupsofwater = int.Parse(Console.ReadLine());
                Console.WriteLine();


                fillCof.FillWithWater(cm, water);
                Console.WriteLine();
                stamping.StampBeans(cm, cb);
                Console.WriteLine();
                fillCof.FillWithTaste(cm, cb);
                Console.WriteLine();

                Console.WriteLine("Press ENTER to brew Espresso");
                Console.ReadKey();
                Console.WriteLine();

                boilwater.Boil(water);
                Console.WriteLine();

                for (int i = 0; i < water.cupsofwater; i++)
                {
                    brewingEsp.Brew(cm, water);
                    Console.WriteLine();
                    Console.WriteLine();
                }

                cm.TurnOff();
            }
            else
            {
                Console.WriteLine("Input Error!");
            }


            Console.ReadKey();
        }