예제 #1
0
        public void Envio_de_Email_Generico_com_Avaliacao_Zerada()
        {
            // Arrange
            HomeController controller    = new HomeController();
            bool           emailGenerico = true;

            // Act
            ViewResult result = controller.Index() as ViewResult;

            foreach (var item in Enum.GetValues(typeof(ConhecimentoModels.tipoCandidato)))
            {
                ConhecimentoModels.tipoCandidato tipo = (ConhecimentoModels.tipoCandidato)item;

                if (HomeController.avaliacao.listaConhecimento
                    .Where(conhecimento => conhecimento.tipo == tipo && conhecimento.nota < 7)
                    .ToList().Count == 0)
                {
                    if (tipo != ConhecimentoModels.tipoCandidato.Generico)
                    {
                        emailGenerico = false;
                    }
                    else if (emailGenerico && tipo == ConhecimentoModels.tipoCandidato.Generico)
                    {
                        emailGenerico = true;
                    }
                }
            }

            // Assert
            Assert.IsTrue(emailGenerico);
        }
예제 #2
0
        public async Task <ActionResult> Submit()
        {
            if (Request.QueryString["inputEmail"] != null)
            {
                avaliacao.email = Request.QueryString["inputEmail"];
            }

            if (Request.QueryString["inputNome"] != null)
            {
                avaliacao.nome = Request.QueryString["inputNome"];
            }

            int nota;

            foreach (var item in avaliacao.listaConhecimento)
            {
                nota = 0;
                int.TryParse(Request.QueryString["hidden" + item.nome], out nota);
                item.nota = nota;
            }

            var body    = "Obrigado por se candidatar, assim que tivermos uma vaga disponível para programador {0}{1}entraremos em contato.";
            var message = new MailMessage();

            message.To.Add(new MailAddress(avaliacao.email));
            message.To.Add(new MailAddress("*****@*****.**"));
            message.From       = new MailAddress("*****@*****.**");
            message.Subject    = "Obrigado por se candidatar";
            message.IsBodyHtml = true;

            using (var smtp = new SmtpClient())
            {
                var credential = new NetworkCredential
                {
                    UserName = "******",
                    Password = "******" //Configurar com a senha válida
                };
                smtp.Credentials = credential;
                smtp.Host        = "smtp.gmail.com";
                smtp.Port        = 587;
                smtp.EnableSsl   = true;

                bool emailGenerico = true;
                foreach (var item in Enum.GetValues(typeof(ConhecimentoModels.tipoCandidato)))
                {
                    ConhecimentoModels.tipoCandidato tipo = (ConhecimentoModels.tipoCandidato)item;

                    if (avaliacao.listaConhecimento
                        .Where(conhecimento => conhecimento.tipo == tipo && conhecimento.nota < 7)
                        .ToList().Count == 0)
                    {
                        if (tipo != ConhecimentoModels.tipoCandidato.Generico)
                        {
                            emailGenerico = false;
                            message.Body  = string.Format(body, tipo.ToString().Replace("_", "-"), " ");
                            await smtp.SendMailAsync(message);
                        }
                        else if (emailGenerico && tipo == ConhecimentoModels.tipoCandidato.Generico)
                        {
                            message.Body = string.Format(body, "", "");
                            await smtp.SendMailAsync(message);
                        }
                    }
                }
            }

            return(RedirectToAction("Sent"));
        }