public ValidationResult AtualizarCurso(Guid cursoId, string descricao)
        {
            var resultadoValidacao = new ValidationResult();
            var cursoDb = _cursoRepository.GetById(cursoId);

            cursoDb.AtualizarCurso(descricao);

            if (!cursoDb.IsValid)
            {
                resultadoValidacao.AdicionarErro(cursoDb.ResultadoValidacao);
                return resultadoValidacao;
            }

            var resultadoConsistencia = new CursoEstaConsistenteParaAtualizar(_cursoRepository).Validar(cursoDb);

            if (!resultadoConsistencia.IsValid)
            {
                resultadoValidacao.AdicionarErro(resultadoConsistencia);
                return resultadoValidacao;
            }

            _cursoRepository.Update(cursoDb);

            return resultadoValidacao;
        }
Example #2
0
        public ValidationResult AtualizarCurso(Curso curso)
        {
            var resultadoValidacao = new ValidationResult();
            var cursoDb            = _cursoRepository.GetById(curso.CursoId);

            cursoDb.AtualizarCurso(curso.Descricao, curso.Ativo, curso.TipoCurso);

            if (!cursoDb.IsValid)
            {
                resultadoValidacao.AdicionarErro(cursoDb.ResultadoValidacao);
                return(resultadoValidacao);
            }

            var resultadoConsistencia = new CursoEstaConsistenteParaAtualizar(_cursoRepository).Validar(cursoDb);

            if (!resultadoConsistencia.IsValid)
            {
                resultadoValidacao.AdicionarErro(resultadoConsistencia);
                return(resultadoValidacao);
            }

            _cursoRepository.Update(cursoDb);

            return(resultadoValidacao);
        }
        public void Para_Atualizar_Um_Curso_Deve_Ter_Descricao_Diferente_Se_For_Ids_Diferentes()
        {
            var cursoParaAtualizar = new Curso("Análise de Sistemas");
            var cursoJaCadastrado = new Curso("Análise de Sistemas");

            var stubRepo = MockRepository.GenerateStub<ICursoRepository>();
            stubRepo.Stub(x => x.ObterPorDescricao("Análise de Sistemas")).Return(cursoJaCadastrado);

            var cursoValidation = new CursoEstaConsistenteParaAtualizar(stubRepo);
            var result = cursoValidation.Validar(cursoParaAtualizar);

            Assert.IsFalse(result.IsValid);
            Assert.IsTrue(result.Erros.Any(x => x.Message == "Este curso já foi cadastrado na base de dados"));
        }
Example #4
0
        public void Para_Atualizar_Um_Curso_Deve_Ter_Descricao_Diferente_Se_For_Ids_Diferentes()
        {
            var cursoParaAtualizar = new Curso("Análise de Sistemas", true, tipoCurso);
            var cursoJaCadastrado  = new Curso("Análise de Sistemas", true, tipoCurso);

            var stubRepo = MockRepository.GenerateStub <ICursoRepository>();

            stubRepo.Stub(x => x.ObterPorDescricao("Análise de Sistemas")).Return(cursoJaCadastrado);

            var cursoValidation = new CursoEstaConsistenteParaAtualizar(stubRepo);
            var result          = cursoValidation.Validar(cursoParaAtualizar);

            Assert.IsFalse(result.IsValid);
            Assert.IsTrue(result.Erros.Any(x => x.Message == "Este curso já foi cadastrado na base de dados"));
        }