public void DrinkForwardsSpecialInstructionsChange()
        {
            ComboItem combo = new ComboItem();
            MockDrinkImplementation mock = new MockDrinkImplementation(0, 0);

            combo.Drink = mock;
            Assert.PropertyChanged(combo, "SpecialInstructions", () => {
                mock.AddInstruction("An Instruction");
            });
        }
        public void ShouldGetSpecialInstructions()
        {
            ComboItem combo = new ComboItem();
            MockEntreeImplementation entree = new MockEntreeImplementation(0, 0);

            combo.Entree = entree;
            entree.AddInstruction("Entree Instructions");
            MockDrinkImplementation drink = new MockDrinkImplementation(0, 0);

            combo.Drink = drink;
            drink.AddInstruction("Drink Instructions");
            MockSideImplementation side = new MockSideImplementation(0, 0);

            combo.Side = side;
            side.AddInstruction("Side Instructions");
            Assert.Collection(combo.SpecialInstructions,
                              item => Assert.Equal(entree.ToString(), item),
                              item => Assert.Equal(" - Entree Instructions", item),
                              item => Assert.Equal(side.ToString(), item),
                              item => Assert.Equal(" - Side Instructions", item),
                              item => Assert.Equal(drink.ToString(), item),
                              item => Assert.Equal(" - Drink Instructions", item)
                              );
        }