public void ShouldGetDrinksWithType(DrinkType drinkType)
        {
            var inventory = new MockInventory()
            {
                Drinks = new List <Drink>()
                {
                    new Drink()
                    {
                        Name = "MockDrink", Type = drinkType
                    },
                    new Drink()
                    {
                        Name = "Another", Type = drinkType
                    },
                    new Drink()
                    {
                        Name = "NotThisOne", Type = DrinkType.Unknown
                    }
                }
            };

            var drinks = inventory.GetDrinks(drinkType);

            Assert.Collection(drinks, drink => Assert.Equal("MockDrink", drink.Name),
                              drink => Assert.Equal("Another", drink.Name));
        }
        public void EmptyInventoryShouldReturnNull()
        {
            var inventory = new MockInventory();

            var drinks = inventory.GetDrinks(DrinkType.Beer);

            Assert.Null(drinks);
        }
        public void NullInventoryShouldReturnNull()
        {
            MockInventory inventory = null;

            var drinks = inventory.GetDrinks(DrinkType.Beer);

            Assert.Null(drinks);
        }
        public void NotInStockShouldReturnEmpty()
        {
            var inventory = new MockInventory()
            {
                Drinks = new List <Drink>()
                {
                    new Drink()
                    {
                        Name = "WineDrink", Type = DrinkType.Wine
                    },
                    new Drink()
                    {
                        Name = "WhiskeyDrink", Type = DrinkType.Whiskey
                    }
                }
            };

            var drinks = inventory.GetDrinks(DrinkType.Beer);

            Assert.Empty(drinks);
        }
        public void ShouldGetDrinks()
        {
            var inventory = new MockInventory()
            {
                Drinks = new List <Drink>()
                {
                    new Drink()
                    {
                        Name = "MockDrink", Type = DrinkType.Beer
                    },
                    new Drink()
                    {
                        Name = "Another", Type = DrinkType.Beer
                    }
                }
            };

            var drinks = inventory.GetDrinks();

            Assert.Collection(drinks, drink => Assert.Equal("MockDrink", drink.Name),
                              drink => Assert.Equal("Another", drink.Name));
        }