Example #1
0
        public void Run()
        {
            List <Fruit> fruits;

            using (var dbContext = _dbHandler as FruitMachineDbContext)
            {
                var dbFruits = dbContext?.Fruits;

                if (dbFruits?.Count() < 10)
                {
                    var provided = _provider.Provide(10);

                    dbFruits.AddRange(provided);
                    dbContext.SaveChanges();

                    dbFruits = dbContext.Fruits;
                }

                fruits = dbFruits?.ToList();
            }

            _outputService.PrintAvailable();

            var fruitWish = _prompter.Prompt();

            var whatYouGet = _picker.PickFruit(fruits, fruitWish);

            _outputService.PrintResult(whatYouGet.Key, whatYouGet.Value);
        }