public void MoreThanOneVote()
        {
            var repository = TestsEscolhaRestauranteRepository.SharedRepository;

            var votoVM = new VotoViewModel
            {
                Nome        = "Felipe",
                Email       = "*****@*****.**",
                Restaurante = "Sabor Família",
                DataVoto    = DateTime.Now
            };

            var quantidadeVoto1 = (from vt in repository.Votos
                                   where vt.Nome == votoVM.Nome && vt.DataVoto.Date == DateTime.Today
                                   select vt)
                                  .Count();

            var controller = new RestauranteController(repository);
            var model      = controller.Votar(votoVM) as ViewResult;

            var quantidadeVoto2 = (from vt in repository.Votos
                                   where vt.Nome == votoVM.Nome && vt.DataVoto.Date == DateTime.Today
                                   select vt)
                                  .Count();

            Assert.Equal(quantidadeVoto1, quantidadeVoto2);
        }
        public void Index()
        {
            RestauranteController controller = new RestauranteController(GetRestauranteService());

            ViewResult result = controller.Index() as ViewResult;

            Assert.IsNotNull(result);
        }
Example #3
0
        public void GetAllRestaurantes()
        {
            var restaurantesTest = (List <Restaurante>)repo.GetAll();
            var controller       = new RestauranteController(db);

            List <Restaurante> retorno = controller.GetRestaurantes();

            Assert.AreEqual(restaurantesTest.Count, retorno.Count);
        }
Example #4
0
        public async Task GetAllRestaurantesAsync()
        {
            var restaurantesTest = (List <Restaurante>)repo.GetAll();
            var controller       = new RestauranteController(db);

            List <Restaurante> retorno = await controller.GetRestaurantesAsync() as List <Restaurante>;

            Assert.AreEqual(restaurantesTest.Count, retorno.Count);
        }
Example #5
0
        public void GetRestauranteByNameFail()
        {
            var controller = new RestauranteController(db);

            var actionResult = controller.GetByName("Demo15");
            var result       = actionResult as NotFoundResult;

            Assert.IsNotNull(result);
            Assert.AreEqual(404, result.StatusCode);
        }
        public void GetRestaurantes()
        {
            RestauranteController controller = new RestauranteController(GetRestauranteService());

            ViewResult result = controller.Index() as ViewResult;

            var votarVm = (VotarViewModel)result.Model;

            Assert.IsTrue(votarVm.RestaurantesViewModel.Restaurantes.Any());
        }
Example #7
0
        public void DeleteRestauranteFail()
        {
            var controller = new RestauranteController(db);

            var actionResult = controller.DeleteRestaurante(1);
            var result       = actionResult as NotFoundResult;

            Assert.IsNotNull(result);
            Assert.AreEqual(404, result.StatusCode);
        }
Example #8
0
        public void GetRestauranteByName()
        {
            var controller = new RestauranteController(db);

            var actionResult = controller.GetByName("Demo1");
            var result       = actionResult as OkObjectResult;

            Assert.IsNotNull(result);
            Assert.AreEqual(200, result.StatusCode);
        }
Example #9
0
        public void InsertRestaurantePostFail()
        {
            var restaurantesTest = new Restaurante();
            var controller       = new RestauranteController(db);

            var actionResult = controller.InsertRestaurante(restaurantesTest);
            var result       = actionResult as BadRequestObjectResult;

            Assert.IsNotNull(result);
            Assert.AreEqual(400, result.StatusCode);
        }
Example #10
0
        public void GetRestauranteById()
        {
            var controller      = new RestauranteController(db);
            var restauranteTest = repo.Where(r => r.Nome == "Demo1").FirstOrDefault();

            var actionResult = controller.GetById(restauranteTest.Id);
            var result       = actionResult as OkObjectResult;

            Assert.IsNotNull(result);
            Assert.AreEqual(200, result.StatusCode);
        }
        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);
        }
Example #12
0
        public void UpdateRestauranteFail2()
        {
            var restaurantesTest = repo.Where(r => r.Nome == "Demo6").FirstOrDefault();

            restaurantesTest.Nome = null;
            var controller = new RestauranteController(db);

            var actionResult = controller.UpdateRestaurante(restaurantesTest);
            var result       = actionResult as BadRequestObjectResult;

            Assert.IsNotNull(result);
            Assert.AreEqual(400, result.StatusCode);
        }
Example #13
0
        public void UpdateRestauranteFail()
        {
            var restaurantesTest = new Restaurante {
                Nome = "Demo5"
            };
            var controller = new RestauranteController(db);

            var actionResult = controller.UpdateRestaurante(restaurantesTest);
            var result       = actionResult as NotFoundResult;

            Assert.IsNotNull(result);
            Assert.AreEqual(404, result.StatusCode);
        }
Example #14
0
        public void InsertRestaurantePost()
        {
            var restaurantesTest = new Restaurante {
                Nome = "Demo5"
            };
            var controller = new RestauranteController(db);

            var actionResult = controller.InsertRestaurante(restaurantesTest);
            var result       = actionResult as OkObjectResult;

            Assert.IsNotNull(result);
            Assert.AreEqual(200, result.StatusCode);
        }
Example #15
0
        public void DeleteRestaurante()
        {
            var restauranteTest = new Restaurante {
                Nome = "Demo6"
            };

            repo.Save(restauranteTest);
            var controller = new RestauranteController(db);

            var actionResult = controller.DeleteRestaurante(restauranteTest.Id);
            var result       = actionResult as OkObjectResult;

            Assert.IsNotNull(result);
            Assert.AreEqual(200, result.StatusCode);
        }
        public void VotarActionIsComplete()
        {
            var repository = TestsEscolhaRestauranteRepository.SharedRepository;

            var votoVM = new VotoViewModel
            {
                Nome        = "Anderson",
                Email       = "*****@*****.**",
                DataVoto    = DateTime.Now,
                Restaurante = "Subway"
            };

            var controller = new RestauranteController(repository);
            var viewResult = controller.Votar(votoVM) as ViewResult;

            Assert.NotNull(viewResult.ViewName);
        }
        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));
        }
        public void VotosActionModelIsComplete()
        {
            var repository = TestsEscolhaRestauranteRepository.SharedRepository;

            var controller = new RestauranteController(repository);

            var model = (controller.Votos() as ViewResult)?.ViewData.Model as IEnumerable <VotoViewModel>;

            var votosVM = (from vt in repository.Votos
                           orderby vt.DataVoto descending
                           select new VotoViewModel
            {
                Nome = vt.Nome,
                Email = vt.Email,
                Restaurante = vt.Restaurante.Nome,
                DataVoto = vt.DataVoto
            })
                          .ToList()
                          .AsEnumerable <VotoViewModel>();

            Assert.Equal(votosVM, model, Comparer.Get <VotoViewModel>((p1, p2) => p1.Nome == p2.Nome));
        }