public void QualifiqueCandidatoTest_deve_indicar_qualificacao_para_mobile_ios_android()
        {
            var candidato = CrieCandidatoMobileIosAndroid();
            var ServicoDeQualificacaoDeCandidatos = new ServicoDeQualificacaoDeCandidatos();

            ServicoDeQualificacaoDeCandidatos.QualifiqueCandidato(candidato);

            var quantidade = candidato.Qualificacoes.Count;

            Assert.Equal(1, quantidade);
            Assert.Contains(Qualificacao.mobile, candidato.Qualificacoes);
        }
        public void QualifiqueCandidatoTest_deve_indicar_nenhuma_qualificacao()
        {
            var candidato = CrieCandidato();
            var ServicoDeQualificacaoDeCandidatos = new ServicoDeQualificacaoDeCandidatos();

            ServicoDeQualificacaoDeCandidatos.QualifiqueCandidato(candidato);

            var quantidade = candidato.Qualificacoes.Count;

            Assert.Equal(1, quantidade);
            Assert.Contains(Qualificacao.nenhum, candidato.Qualificacoes);
        }
        public void QualifiqueCandidatoTest_deve_indicar_qualificacao_para_frontEnd()
        {
            var candidato = CrieCandidatoForntEnd();
            var ServicoDeQualificacaoDeCandidatos = new ServicoDeQualificacaoDeCandidatos();

            ServicoDeQualificacaoDeCandidatos.QualifiqueCandidato(candidato);

            var quantidade = candidato.Qualificacoes.Count;

            Assert.Equal(1, quantidade);
            Assert.Contains(Qualificacao.frontEnd, candidato.Qualificacoes);
        }
        public void QualifiqueCandidatoTest_deve_indicar_qualificacao_para_todos_stacks()
        {
            var candidato = CrieCandidatoFullStack();
            var ServicoDeQualificacaoDeCandidatos = new ServicoDeQualificacaoDeCandidatos();

            ServicoDeQualificacaoDeCandidatos.QualifiqueCandidato(candidato);

            var quantidade = candidato.Qualificacoes.Count;

            Assert.Equal(3, quantidade);
            Assert.Contains(Qualificacao.frontEnd, candidato.Qualificacoes);
            Assert.Contains(Qualificacao.backEnd, candidato.Qualificacoes);
            Assert.Contains(Qualificacao.mobile, candidato.Qualificacoes);
        }
        public void GetEmailDeRetornoTest_deve_retornar_email_generico()
        {
            var candidato = CrieCandidato();

            candidato.Qualificacoes = new List <Qualificacao> {
                Qualificacao.nenhum
            };
            var ServicoDeQualificacaoDeCandidatos = new ServicoDeQualificacaoDeCandidatos();

            var emails = ServicoDeQualificacaoDeCandidatos.GetEmailDeRetorno(candidato, Origem);

            var quantidade = emails.Count;

            Assert.Equal(1, quantidade);
            var emailEsperado = GetEmailGenerico(candidato.Email, Origem);

            Assert.Contains(emailEsperado, emails);
        }
        public void GetEmailDeRetornoTest_deve_retornar_email_para_mobile()
        {
            var candidato = CrieCandidatoMobileIosAndroid();

            candidato.Qualificacoes = new List <Qualificacao> {
                Qualificacao.mobile
            };
            var ServicoDeQualificacaoDeCandidatos = new ServicoDeQualificacaoDeCandidatos();

            var emails = ServicoDeQualificacaoDeCandidatos.GetEmailDeRetorno(candidato, Origem);

            var quantidade = emails.Count;

            Assert.Equal(1, quantidade);
            var emailEsperado = GetEmailMobile(candidato.Email, Origem);

            Assert.Contains(emailEsperado, emails);
        }
        public void GetEmailDeRetornoTest_deve_retornar_email_para_todos_stacks()
        {
            var candidato = CrieCandidatoFullStack();

            candidato.Qualificacoes = new List <Qualificacao> {
                Qualificacao.backEnd,
                Qualificacao.frontEnd,
                Qualificacao.mobile
            };
            var ServicoDeQualificacaoDeCandidatos = new ServicoDeQualificacaoDeCandidatos();

            var emails = ServicoDeQualificacaoDeCandidatos.GetEmailDeRetorno(candidato, Origem);

            var quantidade = emails.Count;

            Assert.Equal(3, quantidade);
            var emailEsperado = GetEmailFrontEnd(candidato.Email, Origem);

            Assert.Contains(emailEsperado, emails);
            emailEsperado = GetEmailBackEnd(candidato.Email, Origem);
            Assert.Contains(emailEsperado, emails);
            emailEsperado = GetEmailMobile(candidato.Email, Origem);
            Assert.Contains(emailEsperado, emails);
        }