Ejemplo n.º 1
0
        public void ObterContagemRestauranteMaisVotadoTeste()
        {
            // 1. Seta o dia com uma data válida.
            Dia dia = new Dia(new DateTime(2015, 08, 11), null);
            // 2. Cadastra 5 colaboradores
            Colaborador colaborador1 = new Colaborador(
                1000,
                "Colaborador Um",
                "*****@*****.**",
                "senha1");

            Colaborador colaborador2 = new Colaborador(
                2000,
                "Colaborador Dois",
                "*****@*****.**",
                "senha2");

            Colaborador colaborador3 = new Colaborador(
                3000,
                "Colaborador Três",
                "*****@*****.**",
                "senha3");

            Colaborador colaborador4 = new Colaborador(
                4000,
                "Colaborador Quatro",
                "*****@*****.**",
                "senha4");

            Colaborador colaborador5 = new Colaborador(
                5000,
                "Colaborador Cinco",
                "*****@*****.**",
                "senha5");

            dia.VerificarRestaurantes();
            // 3. Cadastra dois restaurantes Morte Lenta e Bandejão.
            Restaurante morteLenta = new Restaurante(
                1000,
                "Morte Lenta");

            Restaurante bandejao = new Restaurante(
                2000,
                "Bandejão");

            // 4. Contabiliza os votos de cada colaborador para seu restaurante preferido.
            // Voto(Colaborador, Restaurante)
            dia.Voto(colaborador3, bandejao);
            dia.Voto(colaborador1, morteLenta);
            dia.Voto(colaborador4, morteLenta);
            dia.Voto(colaborador2, morteLenta);
            dia.Voto(colaborador5, bandejao);

            // 5. Pergunta se o Nome do Restaurante mais votados é igual ao Bandejão.
            // O restaurante mais votado do dia é igual ao 3000 (Morte Lenta).
            // 5 votos contabilizados: 3 votos para o Morte lenta e 2 para o Bandejão.
            Assert.AreEqual(dia.ObterRestauranteMaisVotado(), morteLenta.Id);
        }
Ejemplo n.º 2
0
        static Colaborador()
        {
            // 1. Criam-se 5 colaboradores fictícios, já que não existe banco de dados.
            Colaborador colaborador1 = new Colaborador(
                "1000",
                "Colaborador Um",
                "*****@*****.**",
                ObterSenha("senha1"));

            // 2. Coloca-se estes 5 colabores numa lista.
            Colaboradores = new List<Colaborador>();
            Colaboradores.Add(colaborador1);
        }
        static Colaborador()
        {
            // 1. Criam-se 5 colaboradores fictícios, já que não existe banco de dados.
            Colaborador colaborador1 = new Colaborador(
                1000,
                "Colaborador Um",
                "*****@*****.**",
                ObterSenha("senha1"));

            Colaborador colaborador2 = new Colaborador(
                2000,
                "Colaborador Dois",
                "*****@*****.**",
                ObterSenha("senha2"));

            Colaborador colaborador3 = new Colaborador(
                3000,
                "Colaborador Três",
                "*****@*****.**",
                ObterSenha("senha3"));

            Colaborador colaborador4 = new Colaborador(
                4000,
                "Colaborador Quatro",
                "*****@*****.**",
                ObterSenha("senha4"));

            Colaborador colaborador5 = new Colaborador(
                5000,
                "Colaborador Cinco",
                "*****@*****.**",
                ObterSenha("senha5"));

            // 2. Coloca-se estes 5 colabores numa lista.
            Colaboradores = new List<Colaborador>();
            Colaboradores.Add(colaborador1);
            Colaboradores.Add(colaborador2);
            Colaboradores.Add(colaborador3);
            Colaboradores.Add(colaborador4);
            Colaboradores.Add(colaborador5);
        }
Ejemplo n.º 4
0
 // Um profissional só pode votar em um restaurante por dia.
 public bool ColaboradorVotou(Colaborador colaborador)
 {
     // Retorna TRUE se encontrar algum colaborador na lista que já tenha votado no dia.
     return Votos.Keys.Where(c => c.Id.Equals(colaborador.Id)).ToList().Count != 0;
 }
Ejemplo n.º 5
0
 public void Voto(Colaborador colaborador, Restaurante restaurante)
 {
     // Verifica se o colaborador já votou. "Um profissional só pode votar em um restaurante por dia."
     if (!ColaboradorVotou(colaborador))
         Votos.Add(colaborador, restaurante);
 }
Ejemplo n.º 6
0
        public void ObterRestauranteMaisVotadoTeste()
        {
            Dia dia = new Dia(new DateTime(2015, 08, 10), null);
            Colaborador colaborador1 = new Colaborador(
                1000,
                "Colaborador Um",
                "*****@*****.**",
                "senha1");

            Colaborador colaborador2 = new Colaborador(
                2000,
                "Colaborador Dois",
                "*****@*****.**",
                "senha2");

            Colaborador colaborador3 = new Colaborador(
                3000,
                "Colaborador Três",
                "*****@*****.**",
                "senha3");

            Colaborador colaborador4 = new Colaborador(
                4000,
                "Colaborador Quatro",
                "*****@*****.**",
                "senha4");

            Colaborador colaborador5 = new Colaborador(
                5000,
                "Colaborador Cinco",
                "*****@*****.**",
                "senha5");

            dia.VerificarRestaurantes();
            Restaurante morteLenta = new Restaurante(
                1000,
                "Morte Lenta");

            Restaurante bandejao = new Restaurante(
                2000,
                "Bandejão");

            Restaurante carpano = new Restaurante(
                6000,
                "Carpano Restaurante");

            Restaurante gangueCalcaBranca = new Restaurante(
                4000,
                "Gangue da Calça Branca");

            Restaurante tiaLouca = new Restaurante(
                3000,
                "Restaurante da Tia Louca");

            // Resultado: Bandejão = 3, Morte Lenta = 2, Carpano = 2, Gangue da Calça Branca = 1, Tia Louca = 2
            dia.Voto(colaborador1, morteLenta);
            dia.Voto(colaborador2, morteLenta);
            dia.Voto(colaborador3, bandejao);
            dia.Voto(colaborador4, carpano);
            dia.Voto(colaborador5, gangueCalcaBranca);

            dia.Voto(colaborador1, bandejao);
            dia.Voto(colaborador3, carpano);
            dia.Voto(colaborador2, bandejao);
            dia.Voto(colaborador5, tiaLouca);
            dia.Voto(colaborador4, tiaLouca);
            Assert.AreEqual(dia.ObterRestauranteMaisVotado().Id, bandejao.Id);
        }
Ejemplo n.º 7
0
        public void TestarVotacaoESeOColaboradorJaVotouTeste()
        {
            Dia dia = new Dia(new DateTime(2015, 08, 5), null);
            Colaborador colaborador1 = new Colaborador(
                1000,
                "Colaborador Um",
                "*****@*****.**",
                "senha1");

            // Todos os restaurantes disponíveis no dia.
            dia.VerificarRestaurantes();
            Restaurante morteLenta = new Restaurante(
                1000,
                "Morte Lenta");

            // Voto(Colaborador colaborador, Restaurante restaurante)
            dia.Voto(colaborador1, morteLenta);
            Assert.IsTrue(dia.ColaboradorVotou(colaborador1));
        }
Ejemplo n.º 8
0
        public void RestauranteEscolhidoUmaVezSomenteNaSemanaTeste()
        {
            // 1. Vamos setar o dia 27 de Agosto, quinta-feira. Null, significa que no dia anterior não
            // houve votação.
            Dia dia = new Dia(new DateTime(2015, 8, 27), null);
            // 2. Criamos os 5 colaboradores
            Colaborador colaborador1 = new Colaborador(
                1000,
                "Colaborador Um",
                "*****@*****.**",
                "senha1");

            Colaborador colaborador2 = new Colaborador(
                2000,
                "Colaborador Dois",
                "*****@*****.**",
                "senha2");

            Colaborador colaborador3 = new Colaborador(
                3000,
                "Colaborador Três",
                "*****@*****.**",
                "senha3");

            Colaborador colaborador4 = new Colaborador(
                4000,
                "Colaborador Quatro",
                "*****@*****.**",
                "senha4");

            Colaborador colaborador5 = new Colaborador(
                5000,
                "Colaborador Cinco",
                "*****@*****.**",
                "senha5");

            // 3. Verificamos os restaurantes do dia. Vai trazer os 6 cadastrados, pois o dia
            // foi passado como null. Observe o item 1. (Dia dia = new Dia(new DateTime(2015, 8, 27), null).
            dia.VerificarRestaurantes();
            // 4. Vamos criar dois para a votação.
            Restaurante morteLenta = new Restaurante(
                1000,
                "Morte Lenta");

            Restaurante bandejao = new Restaurante(
                2000,
                "Bandejão");
            // 5. Espera-se encontrar 6 restaurantes na lista dia.Restaurantes.
            Assert.AreEqual(dia.Restaurantes.Count, 6);
            // 6. Vamos votar agora duas vezes no "Morte Lenta" e uma vez no "Bandejão".
            dia.Voto(colaborador1, morteLenta);
            dia.Voto(colaborador2, morteLenta);
            dia.Voto(colaborador3, bandejao);

            // 7. O próximo dia será 28 de Agosto, sexta-feira.
            Dia proximoDia = new Dia(new DateTime(2015, 8, 28), dia);
            // 8. Nesta verificação serão passados 3 votos na sexta-feira. O mais votado foi o "Morte Lenta".
            // A lista de restaurantes retorna com 5, ou seja sem o "Morte Lenta".
            proximoDia.VerificarRestaurantes();
            Assert.AreEqual(proximoDia.Restaurantes.Count, 5);
        }
Ejemplo n.º 9
0
        public static bool IsValid(string username, string password)
        {
            using (var cn = new SqlConnection(
                @"Data Source=(LocalDB)\v11.0;
                AttachDbFilename='C:\Cursos\DB Server\Teste-DBServer\RestauranteVotacao\App_Data\Database.mdf';
                Integrated Security=True"))
            {
                string _sql = @"SELECT *  FROM [dbo].[User] WHERE [Name] = @usr AND [Password] = @pwd";

                var cmd = new SqlCommand(_sql, cn);
                cmd.Parameters
                    .Add(new SqlParameter("@usr", SqlDbType.NVarChar))
                    .Value = username;
                cmd.Parameters
                    .Add(new SqlParameter("@pwd", SqlDbType.NVarChar))
                    .Value = Helpers.MD5.Encode(password);
                cn.Open();
                SqlDataReader reader = cmd.ExecuteReader();
                if (reader.HasRows)
                {
                    while (reader.Read()) {
                    // Carrego o objeto Colaborador com o resultado do select para usar mais tarde.
                            colaborador = new Colaborador(
                            reader.GetValue(2).ToString(),
                            reader.GetValue(1).ToString(),
                            reader.GetValue(0).ToString(),
                            reader.GetValue(3).ToString());
                    }

                    reader.Dispose();
                    cmd.Dispose();
                    return true;
                }
                else
                {
                    reader.Dispose();
                    cmd.Dispose();
                    return false;
                }
            }
        }