Beispiel #1
0
        public void DadaUmaDataDeExpiracaoMenorQueADataDeCriacaoDaVagaConstrutorDeveRetornarUmaVagaDeEmpregoInvalida()
        {
            dataExpiracao = DateTime.Today.AddDays(-30);
            VagaEmprego vaga = new VagaEmprego(empresa, cargo, descricaoVaga, beneficios, areaProfissional, horarioTrabalho, dataExpiracao, false, salario, tipoContratacao);

            Assert.IsFalse(vaga.IsValid());
        }
Beispiel #2
0
        public void SeVagaEmpregoCriadaForInvalidaInserirVagaEmpresaComandoManipuladorDeveRetornarNotificacao()
        {
            var vagaEmpregoInvalida = new VagaEmprego(empresaValida,
                                                      new Nome(""),
                                                      new Texto(comandoValido.Descricao),
                                                      new Texto(comandoValido.Beneficios),
                                                      areaProfissionalValida,
                                                      new Descricao(comandoValido.HorarioTrabalho),
                                                      new DateTime(2500, 12, 31),
                                                      comandoValido.SalarioAcombinar,
                                                      new NumeroPositivo(comandoValido.Salario),
                                                      tipoContratacaoValida);

            empresaRepositorio.Setup(x => x.BuscaEmpresaPorId(comandoValido.EmpresaId)).Returns(empresaValida);
            areaProfissionalRepositorio.Setup(x => x.BuscaAreaProfissionalPorId(comandoValido.AreaProfissionalId)).Returns(areaProfissionalValida);
            tipoContratacaoRepositorio.Setup(x => x.BuscaTipoContratacaoPorId(comandoValido.TipoContratacaoId)).Returns(tipoContratacaoValida);

            vagaEmpregoMap.Setup(x => x.CriarVagaEmprego(comandoValido, empresaValida, areaProfissionalValida, tipoContratacaoValida)).Returns(vagaEmpregoInvalida);

            var vagaEmpregoManipulador = new VagaEmpregoComandoManipulador(vagaEmpregoRepositorio.Object,
                                                                           empresaRepositorio.Object,
                                                                           vagaEmpregoMap.Object,
                                                                           areaProfissionalRepositorio.Object,
                                                                           tipoContratacaoRepositorio.Object);

            Assert.IsNull(vagaEmpregoManipulador.Manipular(comandoValido));
            Assert.AreNotEqual(0, vagaEmpregoManipulador.Notifications.Count);

            vagaEmpregoMap.Verify(x => x.CriarVagaEmprego(comandoValido, empresaValida, areaProfissionalValida, tipoContratacaoValida), Times.Once);
            vagaEmpregoRepositorio.Verify(x => x.Adicionar(vagaEmpregoInvalida), Times.Never);
        }
Beispiel #3
0
        public void QuandoUmaVagaForEncerradaSeuStatusDeveraSerTrocadoEncerrada()
        {
            VagaEmprego vaga = new VagaEmprego(empresa, cargo, descricaoVaga, beneficios, areaProfissional, horarioTrabalho, dataExpiracao, false, salario, tipoContratacao);

            vaga.Encerrar();
            Assert.AreEqual(StatusVaga.Encerrada, vaga.Status);
        }
Beispiel #4
0
 public void Adicionar(VagaEmprego vaga)
 {
     _contexto.VagaEmprego.Add(vaga);
     _contexto.Entry(vaga.AreaProfissional).State = EntityState.Unchanged;
     _contexto.Entry(vaga.TipoContratacao).State  = EntityState.Unchanged;
     _contexto.Entry(vaga.Empresa).State          = EntityState.Unchanged;
 }
        public void Inicializar()
        {
            var empresa          = new Empresa(new Nome("Empresa LTDA"), new Texto("Empresa"), new Nome("Belo Horizonte"), "", new Site("www.empresa.io"));
            var areaProfissional = new AreaProfissional(new Nome("Informática"));

            vagaEmprego       = new VagaEmprego(empresa, new Nome("Programador"), new Texto("Programar em .NET com C#"), new Texto("Vale Refeição"), areaProfissional, new Descricao("De 08 às 17:40 todos os dias de semana"), new DateTime(2118, 01, 20), false, new NumeroPositivo(4000), new TipoContratacao(new Nome("CLT")));
            candidato         = new Candidato(new Email("*****@*****.**"), new Nome("José Silva"), new Telefone("3134231829"), new CPF("16654614038"), "!1234", "!1234");
            pretensaoSalarial = new NumeroPositivo(8000);
            observacoes       = new Texto("Disponibilidade imediata");
        }
Beispiel #6
0
        public void DadasTodasAsInformacoesValidasDaVagaDeEmpregoOConstrutorDeveCriarUmaVagaDeEmpregoAbertaValida()
        {
            VagaEmprego vaga = new VagaEmprego(empresa, cargo, descricaoVaga, beneficios, areaProfissional, horarioTrabalho, dataExpiracao, false, salario, tipoContratacao);

            Assert.IsTrue(vaga.IsValid());

            Assert.AreEqual(DateTime.Today, vaga.DataCriacao.Date);
            Assert.AreEqual(empresa, vaga.Empresa);
            Assert.AreEqual(cargo, vaga.Cargo);
            Assert.AreEqual(descricaoVaga, vaga.Descricao);
            Assert.AreEqual(beneficios, vaga.Beneficios);
            Assert.AreEqual(areaProfissional, vaga.AreaProfissional);
            Assert.AreEqual(horarioTrabalho, vaga.HorarioTrabalho);
            Assert.AreEqual(dataExpiracao, vaga.DataExpiracao);
            Assert.IsFalse(vaga.SalarioAcombinar);
            Assert.AreEqual(salario, vaga.Salario);
            Assert.AreEqual(tipoContratacao, vaga.TipoContratacao);
            Assert.AreEqual(StatusVaga.Aberta, vaga.Status);
        }
Beispiel #7
0
        public VagaEmpregoComandoManipuladorTestes()
        {
            vagaEmpregoRepositorio      = new Mock <IVagaEmpregoRepositorio>();
            empresaRepositorio          = new Mock <IEmpresaRepositorio>();
            vagaEmpregoMap              = new Mock <IVagaEmpregoComandoMap>();
            areaProfissionalRepositorio = new Mock <IAreaProfissionalRepositorio>();
            tipoContratacaoRepositorio  = new Mock <ITipoContratacaoRepositorio>();

            comandoValido = new InserirVagaEmpregoComando
            {
                AreaProfissionalId = Guid.Parse("6360523F-F3F8-4384-A51F-0280E98E9D08"),
                Cargo             = "Analista de Sistemas",
                Beneficios        = "Vale transporte, plano de saúde, vale refeição",
                Descricao         = "Obrigatório conhecimento de Programação Orientada a Objetos, .NET Framework, .NET Core, EF, Dapper, SQL Server, NoSql (MongoDb ou RavenDb)",
                EmpresaId         = Guid.Parse("640dbf6f-bfcb-4290-a059-c71152d479f3"),
                HorarioTrabalho   = "Horário flexível",
                Salario           = 6000,
                SalarioAcombinar  = false,
                TipoContratacaoId = Guid.Parse("8D6B1678-5059-42EB-A8C5-F071E88A70C9")
            };

            empresaValida          = new Empresa(new Nome("Empresa Teste LTDA"), new Texto("Empresa de teste"), new Nome("Ressaquinha"), "", new Site("www.empresateste.com.br"));
            areaProfissionalValida = new AreaProfissional(new Nome("Informática"));
            tipoContratacaoValida  = new TipoContratacao(new Nome("CLT"));

            vagaEmpregoValida = new VagaEmprego(empresaValida,
                                                new Nome(comandoValido.Cargo),
                                                new Texto(comandoValido.Descricao),
                                                new Texto(comandoValido.Beneficios),
                                                areaProfissionalValida,
                                                new Descricao(comandoValido.HorarioTrabalho),
                                                new DateTime(2500, 12, 31),
                                                comandoValido.SalarioAcombinar,
                                                new NumeroPositivo(comandoValido.Salario),
                                                tipoContratacaoValida);
        }
Beispiel #8
0
        public void SeOSalarioACombinarForFalsoEOValorDoSalarioForNuloOConstrutorDeveraCriarUmaVagaDeEmpregoInvalida()
        {
            VagaEmprego vaga = new VagaEmprego(empresa, cargo, descricaoVaga, beneficios, areaProfissional, horarioTrabalho, dataExpiracao, false, null, tipoContratacao);

            Assert.IsFalse(vaga.IsValid());
        }
Beispiel #9
0
        public void DadoUmTipoDeContratacaoNuloConstrutorDeveRetornarUmaVagaDeEmpregoInvalida()
        {
            VagaEmprego vaga = new VagaEmprego(empresa, cargo, descricaoVaga, null, areaProfissional, horarioTrabalho, dataExpiracao, false, salario, null);

            Assert.IsFalse(vaga.IsValid());
        }
Beispiel #10
0
        public void DadaUmaDescricaoDaVagaNulaConstrutorDeveRetornarUmaVagaDeEmpregoInvalida()
        {
            VagaEmprego vaga = new VagaEmprego(empresa, cargo, null, beneficios, areaProfissional, horarioTrabalho, dataExpiracao, false, salario, tipoContratacao);

            Assert.IsFalse(vaga.IsValid());
        }
Beispiel #11
0
        public void SeOSalarioACombinarForVerdadeiroConstrutorDeveCriarUmaVagaDeEmpregoComOSalarioIgualAZero()
        {
            VagaEmprego vaga = new VagaEmprego(empresa, cargo, descricaoVaga, beneficios, areaProfissional, horarioTrabalho, dataExpiracao, true, salario, tipoContratacao);

            Assert.AreEqual(0, vaga.Salario.Valor);
        }