Пример #1
0
        public void ShouldReturnCorrectSpecialInstructions()
        {
            var VS = new VokunSalad();

            Assert.Empty(VS.SpecialInstructions);
        }
Пример #2
0
        public void ShouldImplementINotifyProperty()
        {
            VokunSalad vs = new VokunSalad();

            Assert.IsAssignableFrom <INotifyPropertyChanged>(vs);
        }
Пример #3
0
        public void ShouldHaveCorrectDescription()
        {
            var VS = new VokunSalad();

            Assert.Equal("A seasonal fruit salad of mellons, berries, mango, grape, apple, and oranges.", VS.Description);
        }
Пример #4
0
        public void ShouldBeSmallByDefault()
        {
            var VS = new VokunSalad();

            Assert.Equal(Size.Small, VS.Size);
        }
Пример #5
0
 public void ShouldBeSmallByDefault()
 {
     VokunSalad side = new VokunSalad();
     Assert.Equal(Size.Small, side.Size);
 }
Пример #6
0
 public void CheckCorrectSides()
 {
     Assert.Collection(Menu.Sides(),
                       //DragonbornWaffleFries
                       item => {
         Assert.IsType <DragonbornWaffleFries>(item);
         DragonbornWaffleFries dbwf = (DragonbornWaffleFries)item;    //Should be safe as it was asserted above for type
         Assert.Equal(Size.Small, dbwf.Size);
     },
                       item => {
         Assert.IsType <DragonbornWaffleFries>(item);
         DragonbornWaffleFries dbwf = (DragonbornWaffleFries)item;    //Should be safe as it was asserted above for type
         Assert.Equal(Size.Medium, dbwf.Size);
     },
                       item => {
         Assert.IsType <DragonbornWaffleFries>(item);
         DragonbornWaffleFries dbwf = (DragonbornWaffleFries)item;    //Should be safe as it was asserted above for type
         Assert.Equal(Size.Large, dbwf.Size);
     },
                       //FriedMiraak
                       item => {
         Assert.IsType <FriedMiraak>(item);
         FriedMiraak fm = (FriedMiraak)item;    //Should be safe as it was asserted above for type
         Assert.Equal(Size.Small, fm.Size);
     },
                       item => {
         Assert.IsType <FriedMiraak>(item);
         FriedMiraak fm = (FriedMiraak)item;    //Should be safe as it was asserted above for type
         Assert.Equal(Size.Medium, fm.Size);
     },
                       item => {
         Assert.IsType <FriedMiraak>(item);
         FriedMiraak fm = (FriedMiraak)item;    //Should be safe as it was asserted above for type
         Assert.Equal(Size.Large, fm.Size);
     },
                       //MadOtarGrits
                       item => {
         Assert.IsType <MadOtarGrits>(item);
         MadOtarGrits mog = (MadOtarGrits)item;    //Should be safe as it was asserted above for type
         Assert.Equal(Size.Small, mog.Size);
     },
                       item => {
         Assert.IsType <MadOtarGrits>(item);
         MadOtarGrits mog = (MadOtarGrits)item;    //Should be safe as it was asserted above for type
         Assert.Equal(Size.Medium, mog.Size);
     },
                       item => {
         Assert.IsType <MadOtarGrits>(item);
         MadOtarGrits mog = (MadOtarGrits)item;    //Should be safe as it was asserted above for type
         Assert.Equal(Size.Large, mog.Size);
     },
                       //VokunSalad
                       item => {
         Assert.IsType <VokunSalad>(item);
         VokunSalad vs = (VokunSalad)item;    //Should be safe as it was asserted above for type
         Assert.Equal(Size.Small, vs.Size);
     },
                       item => {
         Assert.IsType <VokunSalad>(item);
         VokunSalad vs = (VokunSalad)item;    //Should be safe as it was asserted above for type
         Assert.Equal(Size.Medium, vs.Size);
     },
                       item => {
         Assert.IsType <VokunSalad>(item);
         VokunSalad vs = (VokunSalad)item;    //Should be safe as it was asserted above for type
         Assert.Equal(Size.Large, vs.Size);
     });
 }
 /// <summary>
 /// initializes customization WPF
 /// </summary>
 public VokunSaladCustom()
 {
     InitializeComponent();
     Side             = new VokunSalad();
     this.DataContext = Side;
 }
Пример #8
0
 public void ShouldBeAssignableToIOrderItem()
 {
     VokunSalad side = new VokunSalad();
     Assert.IsAssignableFrom<IOrderItem>(side);
 }
Пример #9
0
        public void ShouldBeSide()
        {
            VokunSalad v = new VokunSalad();

            Assert.IsAssignableFrom <Side>(v);
        }
Пример #10
0
        public void AddingSpecialInstructionsTriggerPropChanges(bool includeBun, bool includeKetchup, bool includeMustard,
                                                                bool includePickle, bool includeCheese, bool includeTomato,
                                                                bool includeLettuce, bool includeMayo,
                                                                bool includeBacon, bool includeEgg)
        {
            var vs = new VokunSalad();
            var ss = new SailorSoda();
            var tt = new ThalmorTriple()
            {
                Bun     = includeBun,
                Ketchup = includeKetchup,
                Mustard = includeMustard,
                Pickle  = includePickle,
                Cheese  = includeCheese,
                Tomato  = includeTomato,
                Lettuce = includeLettuce,
                Mayo    = includeMustard,
                Bacon   = includeBacon,
                Egg     = includeEgg
            };



            Combo combo2 = new Combo(tt, ss, vs);

            ss.Ice = false;
            Assert.Contains("Hold ice", combo2.SpecialInstructions);
            if (!includeBun)
            {
                Assert.Contains("Hold bun", combo2.SpecialInstructions);
            }
            if (!includeKetchup)
            {
                Assert.Contains("Hold ketchup", combo2.SpecialInstructions);
            }
            if (!includeMustard)
            {
                Assert.Contains("Hold mustard", combo2.SpecialInstructions);
            }
            if (!includePickle)
            {
                Assert.Contains("Hold pickle", combo2.SpecialInstructions);
            }
            if (!includeCheese)
            {
                Assert.Contains("Hold cheese", combo2.SpecialInstructions);
            }
            if (!includeTomato)
            {
                Assert.Contains("Hold tomato", combo2.SpecialInstructions);
            }
            if (!includeLettuce)
            {
                Assert.Contains("Hold lettuce", combo2.SpecialInstructions);
            }
            if (!includeMayo)
            {
                Assert.Contains("Hold mayo", combo2.SpecialInstructions);
            }
            if (!includeBacon)
            {
                Assert.Contains("Hold bacon", combo2.SpecialInstructions);
            }
            if (!includeEgg)
            {
                Assert.Contains("Hold egg", combo2.SpecialInstructions);
            }
            else
            {
                Assert.Empty(tt.SpecialInstructions);
            }
        }
Пример #11
0
        public void ShouldBeAssignableToAbstractIOrderInterfaceClass()
        {
            VokunSalad v = new VokunSalad();

            Assert.IsAssignableFrom <IOrderItem>(v);
        }
Пример #12
0
        public void ShouldReturnCorrectDescription(string d)
        {
            VokunSalad aj = new VokunSalad();

            Assert.Equal(d, aj.Description);
        }
        public void ShouldReturnCorrectDescription(string description)
        {
            VokunSalad vs = new VokunSalad();

            Assert.Equal(description, vs.Description);
        }
Пример #14
0
        public void ShouldGetFullMenu()
        {
            BriarheartBurger      bb          = new BriarheartBurger();
            DoubleDraugr          dd          = new DoubleDraugr();
            GardenOrcOmelette     goo         = new GardenOrcOmelette();
            PhillyPoacher         pp          = new PhillyPoacher();
            SmokehouseSkeleton    ss          = new SmokehouseSkeleton();
            ThalmorTriple         tt          = new ThalmorTriple();
            ThugsTBone            ttb         = new ThugsTBone();
            DragonbornWaffleFries smallFries  = new DragonbornWaffleFries();
            DragonbornWaffleFries mediumFries = new DragonbornWaffleFries();

            mediumFries.Size = Size.Medium;
            DragonbornWaffleFries largeFries = new DragonbornWaffleFries();

            largeFries.Size = Size.Large;
            FriedMiraak smallMiraak  = new FriedMiraak();
            FriedMiraak mediumMiraak = new FriedMiraak();

            mediumMiraak.Size = Size.Medium;
            FriedMiraak largeMiraak = new FriedMiraak();

            largeMiraak.Size = Size.Large;
            MadOtarGrits smallGrits  = new MadOtarGrits();
            MadOtarGrits mediumGrits = new MadOtarGrits();

            mediumGrits.Size = Size.Medium;
            MadOtarGrits largeGrits = new MadOtarGrits();

            largeGrits.Size = Size.Large;
            VokunSalad smallSalad  = new VokunSalad();
            VokunSalad mediumSalad = new VokunSalad();

            mediumSalad.Size = Size.Medium;
            VokunSalad largeSalad = new VokunSalad();

            largeSalad.Size = Size.Large;
            AretinoAppleJuice smallJuice  = new AretinoAppleJuice();
            AretinoAppleJuice mediumJuice = new AretinoAppleJuice();

            mediumJuice.Size = Size.Medium;
            AretinoAppleJuice largeJuice = new AretinoAppleJuice();

            largeJuice.Size = Size.Large;
            CandlehearthCoffee smallCoffee  = new CandlehearthCoffee();
            CandlehearthCoffee mediumCoffee = new CandlehearthCoffee();

            mediumCoffee.Size = Size.Medium;
            CandlehearthCoffee largeCoffee = new CandlehearthCoffee();

            largeCoffee.Size = Size.Large;
            CandlehearthCoffee smallDecafCoffee = new CandlehearthCoffee();

            smallDecafCoffee.Decaf = true;
            CandlehearthCoffee mediumDecafCoffee = new CandlehearthCoffee();

            mediumDecafCoffee.Size  = Size.Medium;
            mediumDecafCoffee.Decaf = true;
            CandlehearthCoffee largeDecafCoffee = new CandlehearthCoffee();

            largeDecafCoffee.Size  = Size.Large;
            largeDecafCoffee.Decaf = true;
            MarkarthMilk smallMilk  = new MarkarthMilk();
            MarkarthMilk mediumMilk = new MarkarthMilk();

            mediumMilk.Size = Size.Medium;
            MarkarthMilk largeMilk = new MarkarthMilk();

            largeMilk.Size = Size.Large;
            SailorSoda smallCherrySoda  = new SailorSoda();
            SailorSoda mediumCherrySoda = new SailorSoda();

            mediumCherrySoda.Size = Size.Medium;
            SailorSoda largeCherrySoda = new SailorSoda();

            largeCherrySoda.Size = Size.Large;
            SailorSoda smallBerrySoda = new SailorSoda();

            smallBerrySoda.Flavor = SodaFlavor.Blackberry;
            SailorSoda mediumBerrySoda = new SailorSoda();

            mediumBerrySoda.Size   = Size.Medium;
            mediumBerrySoda.Flavor = SodaFlavor.Blackberry;
            SailorSoda largeBerrySoda = new SailorSoda();

            largeBerrySoda.Size   = Size.Large;
            largeBerrySoda.Flavor = SodaFlavor.Blackberry;
            SailorSoda smallFruitSoda = new SailorSoda();

            smallFruitSoda.Flavor = SodaFlavor.Grapefruit;
            SailorSoda mediumFruitSoda = new SailorSoda();

            mediumFruitSoda.Size   = Size.Medium;
            mediumFruitSoda.Flavor = SodaFlavor.Grapefruit;
            SailorSoda largeFruitSoda = new SailorSoda();

            largeFruitSoda.Size   = Size.Large;
            largeFruitSoda.Flavor = SodaFlavor.Grapefruit;
            SailorSoda smallLemonSoda = new SailorSoda();

            smallLemonSoda.Flavor = SodaFlavor.Lemon;
            SailorSoda mediumLemonSoda = new SailorSoda();

            mediumLemonSoda.Size   = Size.Medium;
            mediumLemonSoda.Flavor = SodaFlavor.Lemon;
            SailorSoda largeLemonSoda = new SailorSoda();

            largeLemonSoda.Size   = Size.Large;
            largeLemonSoda.Flavor = SodaFlavor.Lemon;
            SailorSoda smallPeachSoda = new SailorSoda();

            smallPeachSoda.Flavor = SodaFlavor.Peach;
            SailorSoda mediumPeachSoda = new SailorSoda();

            mediumPeachSoda.Size   = Size.Medium;
            mediumPeachSoda.Flavor = SodaFlavor.Peach;
            SailorSoda largePeachSoda = new SailorSoda();

            largePeachSoda.Size   = Size.Large;
            largePeachSoda.Flavor = SodaFlavor.Peach;
            SailorSoda smallMelonSoda = new SailorSoda();

            smallMelonSoda.Flavor = SodaFlavor.Watermelon;
            SailorSoda mediumMelonSoda = new SailorSoda();

            mediumMelonSoda.Size   = Size.Medium;
            mediumMelonSoda.Flavor = SodaFlavor.Watermelon;
            SailorSoda largeMelonSoda = new SailorSoda();

            largeMelonSoda.Size   = Size.Large;
            largeMelonSoda.Flavor = SodaFlavor.Watermelon;
            WarriorWater smallWater  = new WarriorWater();
            WarriorWater mediumWater = new WarriorWater();

            mediumWater.Size = Size.Medium;
            WarriorWater largeWater = new WarriorWater();

            largeWater.Size = Size.Large;
            Assert.Collection <IOrderItem>(Menu.FullMenu(),
                                           item => Assert.Equal(item.ToString(), bb.ToString()),
                                           item => Assert.Equal(item.ToString(), dd.ToString()),
                                           item => Assert.Equal(item.ToString(), goo.ToString()),
                                           item => Assert.Equal(item.ToString(), pp.ToString()),
                                           item => Assert.Equal(item.ToString(), ss.ToString()),
                                           item => Assert.Equal(item.ToString(), tt.ToString()),
                                           item => Assert.Equal(item.ToString(), ttb.ToString()),
                                           item => Assert.Equal(item.ToString(), smallFries.ToString()),
                                           item => Assert.Equal(item.ToString(), mediumFries.ToString()),
                                           item => Assert.Equal(item.ToString(), largeFries.ToString()),
                                           item => Assert.Equal(item.ToString(), smallMiraak.ToString()),
                                           item => Assert.Equal(item.ToString(), mediumMiraak.ToString()),
                                           item => Assert.Equal(item.ToString(), largeMiraak.ToString()),
                                           item => Assert.Equal(item.ToString(), smallGrits.ToString()),
                                           item => Assert.Equal(item.ToString(), mediumGrits.ToString()),
                                           item => Assert.Equal(item.ToString(), largeGrits.ToString()),
                                           item => Assert.Equal(item.ToString(), smallSalad.ToString()),
                                           item => Assert.Equal(item.ToString(), mediumSalad.ToString()),
                                           item => Assert.Equal(item.ToString(), largeSalad.ToString()),
                                           item => Assert.Equal(item.ToString(), smallJuice.ToString()),
                                           item => Assert.Equal(item.ToString(), mediumJuice.ToString()),
                                           item => Assert.Equal(item.ToString(), largeJuice.ToString()),
                                           item => Assert.Equal(item.ToString(), smallCoffee.ToString()),
                                           item => Assert.Equal(item.ToString(), mediumCoffee.ToString()),
                                           item => Assert.Equal(item.ToString(), largeCoffee.ToString()),
                                           item => Assert.Equal(item.ToString(), smallDecafCoffee.ToString()),
                                           item => Assert.Equal(item.ToString(), mediumDecafCoffee.ToString()),
                                           item => Assert.Equal(item.ToString(), largeDecafCoffee.ToString()),
                                           item => Assert.Equal(item.ToString(), smallMilk.ToString()),
                                           item => Assert.Equal(item.ToString(), mediumMilk.ToString()),
                                           item => Assert.Equal(item.ToString(), largeMilk.ToString()),
                                           item => Assert.Equal(item.ToString(), smallCherrySoda.ToString()),
                                           item => Assert.Equal(item.ToString(), mediumCherrySoda.ToString()),
                                           item => Assert.Equal(item.ToString(), largeCherrySoda.ToString()),
                                           item => Assert.Equal(item.ToString(), smallBerrySoda.ToString()),
                                           item => Assert.Equal(item.ToString(), mediumBerrySoda.ToString()),
                                           item => Assert.Equal(item.ToString(), largeBerrySoda.ToString()),
                                           item => Assert.Equal(item.ToString(), smallFruitSoda.ToString()),
                                           item => Assert.Equal(item.ToString(), mediumFruitSoda.ToString()),
                                           item => Assert.Equal(item.ToString(), largeFruitSoda.ToString()),
                                           item => Assert.Equal(item.ToString(), smallLemonSoda.ToString()),
                                           item => Assert.Equal(item.ToString(), mediumLemonSoda.ToString()),
                                           item => Assert.Equal(item.ToString(), largeLemonSoda.ToString()),
                                           item => Assert.Equal(item.ToString(), smallPeachSoda.ToString()),
                                           item => Assert.Equal(item.ToString(), mediumPeachSoda.ToString()),
                                           item => Assert.Equal(item.ToString(), largePeachSoda.ToString()),
                                           item => Assert.Equal(item.ToString(), smallMelonSoda.ToString()),
                                           item => Assert.Equal(item.ToString(), mediumMelonSoda.ToString()),
                                           item => Assert.Equal(item.ToString(), largeMelonSoda.ToString()),
                                           item => Assert.Equal(item.ToString(), smallWater.ToString()),
                                           item => Assert.Equal(item.ToString(), mediumWater.ToString()),
                                           item => Assert.Equal(item.ToString(), largeWater.ToString()));
        }
Пример #15
0
 public void ShouldReturnCorrectPriceBasedOnSize(Size size, double price)
 {
     VokunSalad vs = new VokunSalad();
     vs.Size = size;
     Assert.Equal(price, vs.Price);
 }
Пример #16
0
 public void ShouldReturnCorrectToStringBasedOnSize(Size size, string name)
 {
     VokunSalad side = new VokunSalad();
     side.Size = size;
     Assert.Equal(name, side.ToString());
 }
Пример #17
0
 public void ShouldReturnCorrectCaloriesBasedOnSize(Size size, uint calories)
 {
     VokunSalad vs = new VokunSalad();
     vs.Size = size;
     Assert.Equal(calories, vs.Calories);
 }
Пример #18
0
 public void ShouldBeASide()
 {
     VokunSalad side = new VokunSalad();
     Assert.IsAssignableFrom<Side>(side);
 }
Пример #19
0
 public void ShouldBeAnIOrderItem()
 {
     VokunSalad vs = new VokunSalad();
     Assert.IsAssignableFrom<IOrderItem>(vs);
 }
Пример #20
0
 public void ShouldReturnCorrectSpecialInstructions()
 {
     VokunSalad side = new VokunSalad();
     Assert.Empty(side.SpecialInstructions);
 }
Пример #21
0
        public void CheckCorrectFullMenu()
        {
            Assert.Collection(Menu.FullMenu(),
                              //Entrees
                              item => Assert.IsType <BriarheartBurger>(item),
                              item => Assert.IsType <DoubleDraugr>(item),
                              item => Assert.IsType <GardenOrcOmelette>(item),
                              item => Assert.IsType <PhillyPoacher>(item),
                              item => Assert.IsType <SmokehouseSkeleton>(item),
                              item => Assert.IsType <ThalmorTriple>(item),
                              item => Assert.IsType <ThugsTBone>(item),

                              //Sides
                              item => {
                Assert.IsType <DragonbornWaffleFries>(item);
                DragonbornWaffleFries dbwf = (DragonbornWaffleFries)item;                    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Small, dbwf.Size);
            },
                              item => {
                Assert.IsType <DragonbornWaffleFries>(item);
                DragonbornWaffleFries dbwf = (DragonbornWaffleFries)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Medium, dbwf.Size);
            },
                              item => {
                Assert.IsType <DragonbornWaffleFries>(item);
                DragonbornWaffleFries dbwf = (DragonbornWaffleFries)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Large, dbwf.Size);
            },
                              //FriedMiraak
                              item => {
                Assert.IsType <FriedMiraak>(item);
                FriedMiraak fm = (FriedMiraak)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Small, fm.Size);
            },
                              item => {
                Assert.IsType <FriedMiraak>(item);
                FriedMiraak fm = (FriedMiraak)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Medium, fm.Size);
            },
                              item => {
                Assert.IsType <FriedMiraak>(item);
                FriedMiraak fm = (FriedMiraak)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Large, fm.Size);
            },
                              //MadOtarGrits
                              item => {
                Assert.IsType <MadOtarGrits>(item);
                MadOtarGrits mog = (MadOtarGrits)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Small, mog.Size);
            },
                              item => {
                Assert.IsType <MadOtarGrits>(item);
                MadOtarGrits mog = (MadOtarGrits)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Medium, mog.Size);
            },
                              item => {
                Assert.IsType <MadOtarGrits>(item);
                MadOtarGrits mog = (MadOtarGrits)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Large, mog.Size);
            },
                              //VokunSalad
                              item => {
                Assert.IsType <VokunSalad>(item);
                VokunSalad vs = (VokunSalad)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Small, vs.Size);
            },
                              item => {
                Assert.IsType <VokunSalad>(item);
                VokunSalad vs = (VokunSalad)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Medium, vs.Size);
            },
                              item => {
                Assert.IsType <VokunSalad>(item);
                VokunSalad vs = (VokunSalad)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Large, vs.Size);
            },

                              //Drinks

                              //AretinoAppleJuice
                              item => {
                Assert.IsType <AretinoAppleJuice>(item);
                AretinoAppleJuice aa = (AretinoAppleJuice)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Small, aa.Size);
            },
                              item => {
                Assert.IsType <AretinoAppleJuice>(item);
                AretinoAppleJuice aa = (AretinoAppleJuice)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Medium, aa.Size);
            },
                              item => {
                Assert.IsType <AretinoAppleJuice>(item);
                AretinoAppleJuice aa = (AretinoAppleJuice)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Large, aa.Size);
            },
                              //CandlehearthCofffee
                              item => {
                Assert.IsType <CandlehearthCoffee>(item);
                CandlehearthCoffee chc = (CandlehearthCoffee)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Small, chc.Size);
            },
                              item => {
                Assert.IsType <CandlehearthCoffee>(item);
                CandlehearthCoffee chc = (CandlehearthCoffee)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Medium, chc.Size);
            },
                              item => {
                Assert.IsType <CandlehearthCoffee>(item);
                CandlehearthCoffee chc = (CandlehearthCoffee)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Large, chc.Size);
            },
                              //MarkarthMilk
                              item => {
                Assert.IsType <MarkarthMilk>(item);
                MarkarthMilk mm = (MarkarthMilk)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Small, mm.Size);
            },
                              item => {
                Assert.IsType <MarkarthMilk>(item);
                MarkarthMilk mm = (MarkarthMilk)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Medium, mm.Size);
            },
                              item => {
                Assert.IsType <MarkarthMilk>(item);
                MarkarthMilk mm = (MarkarthMilk)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Large, mm.Size);
            },
                              //Warrior Water.
                              item => {
                Assert.IsType <WarriorWater>(item);
                WarriorWater ww = (WarriorWater)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Small, ww.Size);
            },
                              item => {
                Assert.IsType <WarriorWater>(item);
                WarriorWater ww = (WarriorWater)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Medium, ww.Size);
            },
                              item => {
                Assert.IsType <WarriorWater>(item);
                WarriorWater ww = (WarriorWater)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Large, ww.Size);
            },
                              //SailorSoda

                              //Blackberry
                              item => {
                Assert.IsType <SailorSoda>(item);
                SailorSoda ss = (SailorSoda)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Small, ss.Size);
                Assert.Equal(SodaFlavor.Blackberry, ss.Flavor);
            },
                              item => {
                Assert.IsType <SailorSoda>(item);
                SailorSoda ss = (SailorSoda)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Medium, ss.Size);
                Assert.Equal(SodaFlavor.Blackberry, ss.Flavor);
            },
                              item => {
                Assert.IsType <SailorSoda>(item);
                SailorSoda ss = (SailorSoda)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Large, ss.Size);
                Assert.Equal(SodaFlavor.Blackberry, ss.Flavor);
            },

                              //Cherry
                              item => {
                Assert.IsType <SailorSoda>(item);
                SailorSoda ss = (SailorSoda)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Small, ss.Size);
                Assert.Equal(SodaFlavor.Cherry, ss.Flavor);
            },
                              item => {
                Assert.IsType <SailorSoda>(item);
                SailorSoda ss = (SailorSoda)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Medium, ss.Size);
                Assert.Equal(SodaFlavor.Cherry, ss.Flavor);
            },
                              item => {
                Assert.IsType <SailorSoda>(item);
                SailorSoda ss = (SailorSoda)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Large, ss.Size);
                Assert.Equal(SodaFlavor.Cherry, ss.Flavor);
            },

                              //Grapefruit
                              item => {
                Assert.IsType <SailorSoda>(item);
                SailorSoda ss = (SailorSoda)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Small, ss.Size);
                Assert.Equal(SodaFlavor.Grapefruit, ss.Flavor);
            },
                              item => {
                Assert.IsType <SailorSoda>(item);
                SailorSoda ss = (SailorSoda)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Medium, ss.Size);
                Assert.Equal(SodaFlavor.Grapefruit, ss.Flavor);
            },
                              item => {
                Assert.IsType <SailorSoda>(item);
                SailorSoda ss = (SailorSoda)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Large, ss.Size);
                Assert.Equal(SodaFlavor.Grapefruit, ss.Flavor);
            },

                              //Lemon
                              item => {
                Assert.IsType <SailorSoda>(item);
                SailorSoda ss = (SailorSoda)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Small, ss.Size);
                Assert.Equal(SodaFlavor.Lemon, ss.Flavor);
            },
                              item => {
                Assert.IsType <SailorSoda>(item);
                SailorSoda ss = (SailorSoda)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Medium, ss.Size);
                Assert.Equal(SodaFlavor.Lemon, ss.Flavor);
            },
                              item => {
                Assert.IsType <SailorSoda>(item);
                SailorSoda ss = (SailorSoda)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Large, ss.Size);
                Assert.Equal(SodaFlavor.Lemon, ss.Flavor);
            },

                              //Peach
                              item => {
                Assert.IsType <SailorSoda>(item);
                SailorSoda ss = (SailorSoda)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Small, ss.Size);
                Assert.Equal(SodaFlavor.Peach, ss.Flavor);
            },
                              item => {
                Assert.IsType <SailorSoda>(item);
                SailorSoda ss = (SailorSoda)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Medium, ss.Size);
                Assert.Equal(SodaFlavor.Peach, ss.Flavor);
            },
                              item => {
                Assert.IsType <SailorSoda>(item);
                SailorSoda ss = (SailorSoda)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Large, ss.Size);
                Assert.Equal(SodaFlavor.Peach, ss.Flavor);
            },

                              //Watermelon
                              item => {
                Assert.IsType <SailorSoda>(item);
                SailorSoda ss = (SailorSoda)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Small, ss.Size);
                Assert.Equal(SodaFlavor.Watermelon, ss.Flavor);
            },
                              item => {
                Assert.IsType <SailorSoda>(item);
                SailorSoda ss = (SailorSoda)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Medium, ss.Size);
                Assert.Equal(SodaFlavor.Watermelon, ss.Flavor);
            },
                              item => {
                Assert.IsType <SailorSoda>(item);
                SailorSoda ss = (SailorSoda)item;    //Should be safe as it was asserted above for type
                Assert.Equal(Size.Large, ss.Size);
                Assert.Equal(SodaFlavor.Watermelon, ss.Flavor);
            });
        }