public void RestaurantAWeek()
        {
            var repository = TestsEscolhaRestauranteRepository.SharedRepository;
            var controller = new RestauranteController(repository);

            var quantidadeResultado1 = ((controller.Resultado() as ViewResult)?.ViewData.Model as IEnumerable <ResultadoViewModel>).Count();

            var model = controller.Eleger() as ViewResult;

            var quantidadeResultado2 = ((controller.Resultado() as ViewResult)?.ViewData.Model as IEnumerable <ResultadoViewModel>).Count();

            Assert.NotEqual(quantidadeResultado1, quantidadeResultado2);
        }
        public void ResultadoActionModelIsComplete()
        {
            var repository = TestsEscolhaRestauranteRepository.SharedRepository;

            var controller = new RestauranteController(repository);
            var model      = (controller.Resultado() as ViewResult)?.ViewData.Model as IEnumerable <ResultadoViewModel>;

            var resultado = (from vt in repository.Votos
                             where (vt.Restaurante.UltimaEscolha == null || vt.Restaurante.UltimaEscolha <= DateTime.Today.AddDays(-7)) &&
                             vt.DataVoto >= DateTime.Today.AddDays(-7)
                             group vt by vt.Restaurante.Nome into rst
                             orderby rst.Count() descending
                             select new ResultadoViewModel
            {
                Restaurante = rst.Key,
                QuantidadeVotos = rst.Count()
            })
                            .ToList()
                            .AsEnumerable <ResultadoViewModel>();

            Assert.Equal(resultado, model, Comparer.Get <ResultadoViewModel>((p1, p2) => p1.Restaurante == p2.Restaurante));
        }