Esempio n. 1
0
        public void APartirDeListaNegativa_QuandoVisitoAmigoZeta_EntaoListaOsTop3Proximos()
        {
            //arrange
            var amigoVisitado = "Amigo Zeta";
            var amigosListaLocalizacoesNegativas = UtilTestes.IniciaListaAmigos_LocalizacoesNegativas();

            Amigo objAmigoVisitado = new Amigo();

            objAmigoVisitado.id                    = amigosListaLocalizacoesNegativas.Count + 1;
            objAmigoVisitado.nome                  = amigoVisitado;
            objAmigoVisitado.localizacao           = new Localizacao();
            objAmigoVisitado.localizacao.latitude  = -40;
            objAmigoVisitado.localizacao.longitude = -50;

            amigosListaLocalizacoesNegativas.Add(objAmigoVisitado);

            var amigoNegocio = new AmigoNegocio(amigosListaLocalizacoesNegativas);

            amigoNegocio.VisitaAmigo(amigoVisitado);

            amigoNegocio.ListarAmigosProximosTop3();

            var msgError = "Esse amigo não está contido na lista: top3AmigosProximos";

            //act
            var top3AmigosProximos = amigoNegocio.ListarAmigosProximosTop3();
            var amigosEsperados    = amigosListaLocalizacoesNegativas.FindAll(_ => _.nome == "Amigo K" ||
                                                                              _.nome == "Amigo W" ||
                                                                              _.nome == "Amigo Y");

            //assert
            CollectionAssert.Contains(top3AmigosProximos, amigosEsperados[0], msgError);
            CollectionAssert.Contains(top3AmigosProximos, amigosEsperados[1], msgError);
            CollectionAssert.Contains(top3AmigosProximos, amigosEsperados[2], msgError);
        }
Esempio n. 2
0
        public void APartirDaListaPositiva_QuandoVisitoAmigoZeta_EntaoListaOsTop3Proximos()
        {
            //arrange
            const string amigoVisitado = "Amigo Zeta";
            var          listaAmigo    = UtilTestes.IniciaListaAmigos_B();

            Amigo objAmigo = new Amigo();

            objAmigo.id                    = listaAmigo.Count + 1;
            objAmigo.nome                  = amigoVisitado;
            objAmigo.localizacao           = new Localizacao();
            objAmigo.localizacao.latitude  = 33;
            objAmigo.localizacao.longitude = 31;

            listaAmigo.Add(objAmigo);

            var amigoNegocio = new AmigoNegocio(listaAmigo);

            amigoNegocio.VisitaAmigo(amigoVisitado);

            //act
            var top3AmigosProximos = amigoNegocio.ListarAmigosProximosTop3();

            //assert
            Assert.AreEqual("Amigo K", top3AmigosProximos[0].nome);
            Assert.AreEqual("Amigo W", top3AmigosProximos[1].nome);
            Assert.AreEqual("Amigo Y", top3AmigosProximos[2].nome);
        }
Esempio n. 3
0
        public void TesteAmigosProximos_2()
        {
            //arrange
            string nomeAmigoVisitado = "Amigo Sigma";
            var    amigosList        = UtilTestes.IniciaListaAmigos_B();
            var    amigoNegocio      = new AmigoNegocio(amigosList);

            //act
            amigoNegocio.VisitaAmigo(nomeAmigoVisitado);
        }
Esempio n. 4
0
        public void TesteAmigosProximos_4()
        {
            //arrange
            string nomeAmigoVisitado = "Amigo Beta";
            var    amigosLista       = UtilTestes.IniciaListaAmigos_C();
            var    amigoNegocio      = new AmigoNegocio(amigosLista);

            amigoNegocio.VisitaAmigo(nomeAmigoVisitado);

            //act
            var amigoProximo = amigoNegocio.ListarAmigosProximos().FirstOrDefault();

            //assert
            Assert.AreEqual("Amigo K", amigoProximo.nome);
        }
Esempio n. 5
0
        public void TesteAmigosProximos_1()
        {
            //arrange
            const string nomeAmigoVisitado = "Amigo Beta";
            var          amigosLista       = UtilTestes.IniciaListaAmigos_B();

            amigosLista.Add(new Amigo(amigosLista.Count + 1, nomeAmigoVisitado, new Localizacao(-1, -20)));
            var amigoNegocio = new AmigoNegocio(amigosLista);

            //act
            amigoNegocio.VisitaAmigo(nomeAmigoVisitado);

            var AmigosProximos = amigoNegocio.ListarAmigosProximos();

            //assert
            Assert.AreEqual("Amigo A", AmigosProximos[0].nome);
        }
Esempio n. 6
0
        public void TesteVisitaAmigo()
        {
            //arrange
            var nomeAmigoVisitado = "Amigo Marques";
            var amigosLista       = UtilTestes.IniciaListaAmigos_A();

            amigosLista.Add(new Amigo(amigosLista.Count + 1, nomeAmigoVisitado, new Localizacao(25, 18)));

            //act
            var visitingAmigo = new AmigoNegocio(amigosLista).VisitaAmigo(nomeAmigoVisitado);

            //assert
            var expected     = amigosLista.Find(_ => _.nome == nomeAmigoVisitado);
            var expectedNome = expected.nome;

            Assert.IsTrue(expectedNome == visitingAmigo.nome);
        }
Esempio n. 7
0
        public void TesteAmigosProximos_3()
        {
            //arrange
            string nomeAmigoVisitado = "Amigo Beta";
            var    amigosLista       = UtilTestes.IniciaListaAmigos_B();

            amigosLista.Add(new Amigo(amigosLista.Count + 1, nomeAmigoVisitado, new Localizacao(25, 18)));

            //act
            var amigoNegocio = new AmigoNegocio(amigosLista);

            amigoNegocio.VisitaAmigo(nomeAmigoVisitado);

            var amigoProximo = amigoNegocio.ListarAmigosProximos()[0];

            //assert
            Assert.AreEqual("Amigo Z", amigoProximo.nome);
        }
Esempio n. 8
0
        //Método que processa a opção do menú selecionada pelo usuário
        private static void ProcessaOpcaoMenu(List <Amigo> lstAmigos, Menu opcaoMenu)
        {
            bool continua = true;

            //Verifica se a opção informada é válida

            switch (opcaoMenu)
            {
            case Menu.VizualizarAmigosProximos:
                Console.Clear();
                while (continua)
                {
                    try
                    {
                        Console.WriteLine("Funcionalidade acessada: " + RetornaDescricaoEnum(opcaoMenu) + "\n");
                        ExibirListaDeAmigos(lstAmigos);

                        string nomeAmigoAVisitar;
                        string confirmaAmigoAVisitar;

                        Console.WriteLine("Informe o nome do amigo que está visitando:");
                        nomeAmigoAVisitar = Console.ReadLine();

                        Console.WriteLine(string.Format("Deseja realmente visitar o amigo: {0}? Tecle 'S' para sim e 'N' para não: ", nomeAmigoAVisitar));
                        confirmaAmigoAVisitar = Console.ReadLine();

                        while (confirmaAmigoAVisitar.ToUpper() != "S")
                        {
                            Console.WriteLine("Informe o nome do amigo que está visitando:");
                            nomeAmigoAVisitar = Console.ReadLine();

                            Console.WriteLine(string.Format("Deseja realmente visitar o amigo: {0}? Tecle 'S' para sim e 'N' para não: ", nomeAmigoAVisitar));
                            confirmaAmigoAVisitar = Console.ReadLine();
                        }

                        AmigoNegocio amigoNegocio     = new AmigoNegocio(lstAmigos);
                        Amigo        objAmigoVisitado = amigoNegocio.VisitaAmigo(nomeAmigoAVisitar);

                        var listagemAmigosProximos = amigoNegocio.ListarAmigosProximos();
                        ExibirListaDeAmigosProximos(listagemAmigosProximos, objAmigoVisitado);

                        continua = false;
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine(ex.Message);
                    }
                }
                ExibirMenuPrincipal(lstAmigos);
                break;

            case Menu.VizualizarTop3AmigosProximos:
                Console.Clear();
                while (continua)
                {
                    try
                    {
                        Console.WriteLine("Funcionalidade acessada: " + RetornaDescricaoEnum(opcaoMenu) + "\n");
                        ExibirListaDeAmigos(lstAmigos);

                        string nomeAmigoAVisitar;
                        string confirmaAmigoAVisitar;

                        Console.WriteLine("Informe o nome do amigo que está visitando:");
                        nomeAmigoAVisitar = Console.ReadLine();

                        Console.WriteLine(string.Format("Deseja realmente visitar o amigo: {0}? Tecle 'S' para sim e 'N' para não: ", nomeAmigoAVisitar));
                        confirmaAmigoAVisitar = Console.ReadLine();

                        while (confirmaAmigoAVisitar.ToUpper() != "S")
                        {
                            Console.WriteLine("Informe o nome do amigo que está visitando:");
                            nomeAmigoAVisitar = Console.ReadLine();

                            Console.WriteLine(string.Format("Deseja realmente visitar o amigo: {0}? Tecle 'S' para sim e 'N' para não: ", nomeAmigoAVisitar));
                            confirmaAmigoAVisitar = Console.ReadLine();
                        }

                        AmigoNegocio amigoNegocio     = new AmigoNegocio(lstAmigos);
                        Amigo        objAmigoVisitado = amigoNegocio.VisitaAmigo(nomeAmigoAVisitar);

                        var listagemAmigosProximos = amigoNegocio.ListarAmigosProximosTop3();
                        ExibirListaDeAmigosProximos(listagemAmigosProximos, objAmigoVisitado);

                        continua = false;
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine(ex.Message);
                    }
                }
                ExibirMenuPrincipal(lstAmigos);
                break;

            case Menu.VizualizarAmigosCadastrados:
                Console.Clear();
                while (continua)
                {
                    try
                    {
                        Console.WriteLine("Funcionalidade acessada: " + RetornaDescricaoEnum(opcaoMenu) + "\n");
                        ExibirListaDeAmigos(lstAmigos);
                        continua = false;
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine(ex.Message);
                    }
                }
                ExibirMenuPrincipal(lstAmigos);
                break;

            case Menu.InserirAmigo:
                Console.Clear();
                while (continua)
                {
                    try
                    {
                        Console.WriteLine("Funcionalidade acessada: " + RetornaDescricaoEnum(opcaoMenu) + "\n");

                        Console.WriteLine("Informe o nome do amigo:");
                        string _nomeAmigo = Console.ReadLine();
                        Console.WriteLine("");
                        Console.WriteLine("Informe a latitude:");
                        int _latitudeAmigo = Convert.ToInt32(Console.ReadLine());
                        Console.WriteLine("");
                        Console.WriteLine("Infome a Longitude:");
                        int _longitudeAmigo = Convert.ToInt32(Console.ReadLine());
                        Console.WriteLine("");

                        var amigoNegocio = new AmigoNegocio(lstAmigos);
                        var amigoInserir = new Amigo(lstAmigos.Count() + 1, _nomeAmigo, new Localizacao(_latitudeAmigo, _longitudeAmigo));
                        lstAmigos = amigoNegocio.InserirAmigo(amigoInserir);

                        string strMensagem = "Amigo " + _nomeAmigo + " cadastrado com sucesso!";
                        Console.WriteLine(strMensagem);
                        Console.WriteLine(string.Concat(Enumerable.Repeat("-", strMensagem.Length)));
                        Console.WriteLine("");

                        continua = false;
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine(ex.Message);
                    }
                }

                ExibirMenuPrincipal(lstAmigos);
                break;

            case Menu.Encerrar:
                Console.Clear();
                break;

            default:
                Console.WriteLine("Opção inválida no Menu");
                Console.WriteLine("----------------");
                break;
            }
        }