public void ExcluirCidade_IbgeInexistente_Test()
        {
            using (var context = Helpers.InicializadorBDParaTestes.ObterContextApiTestes())
            {
                Helpers.InicializadorBDParaTestes.Seed(context);

                var repository = new CidadeRepository(context);
                var service    = new CidadesService(repository);

                int qtdeCidadesOriginal = service.PesquisarCidades(null, null, null, null, null).QuantidadeCidades;

                service.RemoverCidade(111);

                int qtdeCidadesDepoisExclusao = service.PesquisarCidades(null, null, null, null, null).QuantidadeCidades;

                Assert.IsTrue(qtdeCidadesOriginal == qtdeCidadesDepoisExclusao);
            }
        }
        public void ListarCidades_FiltroPorIBGE_SemResultados_Test()
        {
            using (var context = Helpers.InicializadorBDParaTestes.ObterContextApiTestes())
            {
                Helpers.InicializadorBDParaTestes.Seed(context);

                var repository = new CidadeRepository(context);
                var service    = new CidadesService(repository);

                var result = service.PesquisarCidades(12345, null, null, null, null);

                Assert.IsTrue(result.Cidades.Count() == 0);
                Assert.IsTrue(result.QuantidadeCidades == result.Cidades.Count());
            }
        }
        public void ListarCidades_FiltroPorMicroRegiao_Purus_Test()
        {
            using (var context = Helpers.InicializadorBDParaTestes.ObterContextApiTestes())
            {
                Helpers.InicializadorBDParaTestes.Seed(context);

                var repository = new CidadeRepository(context);
                var service    = new CidadesService(repository);

                var result = service.PesquisarCidades(null, null, null, "Purus", null);

                Assert.IsTrue(result.Cidades.Count() == 1);
                Assert.IsTrue(result.QuantidadeCidades == result.Cidades.Count());
                Assert.IsTrue(result.Cidades.FirstOrDefault().Ibge == 1302405);
            }
        }
        public void ListarCidades_FiltroPorIBGE_Joinville_Test()
        {
            using (var context = Helpers.InicializadorBDParaTestes.ObterContextApiTestes())
            {
                Helpers.InicializadorBDParaTestes.Seed(context);

                var repository = new CidadeRepository(context);
                var service    = new CidadesService(repository);

                var result = service.PesquisarCidades(4208302, null, null, null, null);

                Assert.IsTrue(result.Cidades.Count() == 1);
                Assert.IsTrue(result.QuantidadeCidades == result.Cidades.Count());
                Assert.IsTrue(result.Cidades.FirstOrDefault().Nome == "Itapema");
                Assert.IsTrue(result.Cidades.FirstOrDefault().Ibge == 4208302);
            }
        }
        public void ListarCidades_FiltroPorMesoRegiao_LesteSergipano_Test()
        {
            using (var context = Helpers.InicializadorBDParaTestes.ObterContextApiTestes())
            {
                Helpers.InicializadorBDParaTestes.Seed(context);

                var repository = new CidadeRepository(context);
                var service    = new CidadesService(repository);

                var result = service.PesquisarCidades(null, null, null, null, "Leste Sergipano");

                Assert.IsTrue(result.Cidades.Count() == 3);
                Assert.IsTrue(result.QuantidadeCidades == result.Cidades.Count());
                Assert.IsTrue(result.Cidades.Any(c => c.Ibge == 2806305));
                Assert.IsTrue(result.Cidades.Any(c => c.Ibge == 2806404));
                Assert.IsTrue(result.Cidades.Any(c => c.Ibge == 2806503));
            }
        }
        public void ListarCidades_FiltroPorNome_Mana_Test()
        {
            using (var context = Helpers.InicializadorBDParaTestes.ObterContextApiTestes())
            {
                Helpers.InicializadorBDParaTestes.Seed(context);

                var repository = new CidadeRepository(context);
                var service    = new CidadesService(repository);

                var result = service.PesquisarCidades(null, "Mana", null, null, null);

                Assert.IsTrue(result.Cidades.Count() == 3);
                Assert.IsTrue(result.QuantidadeCidades == result.Cidades.Count());

                Assert.IsTrue(result.Cidades.Any(c => c.Nome.Contains("Manacapuru")));
                Assert.IsTrue(result.Cidades.Any(c => c.Nome.Contains("Manaquiri")));
                Assert.IsTrue(result.Cidades.Any(c => c.Nome.Contains("Manaus")));
            }
        }
        public void ListarCidades_FiltroPorUF_SC_Test()
        {
            using (var context = Helpers.InicializadorBDParaTestes.ObterContextApiTestes())
            {
                Helpers.InicializadorBDParaTestes.Seed(context);

                var repository = new CidadeRepository(context);
                var service    = new CidadesService(repository);

                var result = service.PesquisarCidades(null, null, "SC", null, null);

                Assert.IsTrue(result.Cidades.Count() > 0);
                Assert.IsTrue(result.Cidades.Count() == 3);

                Assert.IsTrue(result.Cidades.Any(c => c.NomeSemAcentuacao.Contains("Joinville")));
                Assert.IsTrue(result.Cidades.Any(c => c.NomeSemAcentuacao.Contains("Florianopolis")));
                Assert.IsTrue(result.Cidades.Any(c => c.NomeSemAcentuacao.Contains("Itapema")));

                Assert.IsTrue(result.QuantidadeCidades == result.Cidades.Count());
            }
        }