public void RemoverEtapaPadrao_EtapaNaoObrigatoria_RemoveEtapaAtualizaOrdem() { var conta = new Conta(); var etapaConvocacao = new EtapaPadraoConta("Convocação", "Etapa de Convocação", 1, 1, 1, ECodigoEtapaObrigatoria.Convocacao); var etapaInscricao = new EtapaPadraoConta("Inscrição", "Etapa de Inscrições", 2, 1, 1, ECodigoEtapaObrigatoria.Inscricao); var etapaVotacao = new EtapaPadraoConta("Votação", "Etapa de Votação", 1, 1, 1, ECodigoEtapaObrigatoria.Votacao); var novaEtapa = new EtapaPadraoConta("Etapa não Obrigatória", "Etapa de Geração da Ata", 2, 1, 1); conta.AdicionarEtapaPadrao(etapaVotacao); conta.AdicionarEtapaPadrao(etapaConvocacao); conta.AdicionarEtapaPadrao(etapaInscricao); conta.AdicionarEtapaPadrao(novaEtapa); conta.RemoverEtapaPadrao(new EtapaPadraoConta("", "", 2, 1, 1)); Assert.Collection(conta.EtapasPadroes, etapa => { Assert.Equal(etapa, etapaConvocacao); Assert.Equal(1, etapa.Ordem); }, etapa => { Assert.Equal(etapa, etapaInscricao); Assert.Equal(2, etapa.Ordem); }, etapa => { Assert.Equal(etapa, etapaVotacao); Assert.Equal(3, etapa.Ordem); } ); }
public void AdicionarEtapaPadrao_EtapaObrigatoriaNaoDuplicada_AdicionaEtapaAtualizaOrdem() { var conta = new Conta(); var etapaConvocacao = new EtapaPadraoConta("Convocação", "Etapa de Convocação", 1, 1, 1, ECodigoEtapaObrigatoria.Convocacao); var etapaInscricao = new EtapaPadraoConta("Inscrição", "Etapa de Inscrições", 2, 1, 1, ECodigoEtapaObrigatoria.Inscricao); var etapaVotacao = new EtapaPadraoConta("Votação", "Etapa de Votação", 1, 1, 1, ECodigoEtapaObrigatoria.Votacao); conta.AdicionarEtapaPadrao(etapaVotacao); conta.AdicionarEtapaPadrao(etapaConvocacao); conta.AdicionarEtapaPadrao(etapaInscricao); Assert.Collection(conta.EtapasPadroes, etapa => { Assert.Equal(etapa, etapaConvocacao); Assert.Equal(1, etapa.Ordem); }, etapa => { Assert.Equal(etapa, etapaInscricao); Assert.Equal(2, etapa.Ordem); }, etapa => { Assert.Equal(etapa, etapaVotacao); Assert.Equal(3, etapa.Ordem); } ); }
public EtapaPadraoConta AdicionarEtapaPadrao(int contaId, EtapaPadraoConta etapaPadrao) { var conta = _repositoryBase.BuscarPeloId(contaId); if (conta == null) { throw new NotFoundException("Conta não encontrada."); } conta.AdicionarEtapaPadrao(etapaPadrao); base.Atualizar(conta); return(etapaPadrao); }
public void RemoverEtapaPadrao_EtapaObrigatoria_ThrowsCustomException() { var conta = new Conta(); var etapaConvocacao = new EtapaPadraoConta("Convocação", "Etapa de Convocação", 1, 1, 1, ECodigoEtapaObrigatoria.Convocacao); var etapaInscricao = new EtapaPadraoConta("Inscrição", "Etapa de Inscrições", 2, 1, 1, ECodigoEtapaObrigatoria.Inscricao); var etapaVotacao = new EtapaPadraoConta("Votação", "Etapa de Votação", 1, 1, 1, ECodigoEtapaObrigatoria.Votacao); var etapaAta = new EtapaPadraoConta("Ata", "Etapa de Geração da Ata", 4, 1, 1, ECodigoEtapaObrigatoria.Ata); conta.AdicionarEtapaPadrao(etapaVotacao); conta.AdicionarEtapaPadrao(etapaConvocacao); conta.AdicionarEtapaPadrao(etapaInscricao); conta.AdicionarEtapaPadrao(etapaAta); var exception = Assert.Throws <CustomException>(() => conta.RemoverEtapaPadrao(new EtapaPadraoConta("", "", 2, 1, 1))); Assert.Equal("Não é permitido remover uma etapa obrigatória.", exception.Message); }
public void AdicionarEtapaPadrao_EtapaObrigatoriaDuplicada_ThowsCustomException() { var conta = new Conta(); var etapaConvocacao = new EtapaPadraoConta("Convocação", "Etapa de Convocação", 1, 1, 1, ECodigoEtapaObrigatoria.Convocacao); var etapaInscricao = new EtapaPadraoConta("Inscrição", "Etapa de Inscrições", 2, 1, 1, ECodigoEtapaObrigatoria.Inscricao) { EtapaObrigatoria = new EtapaObrigatoria { Nome = "Etapa Obrigatória Inscrição" } }; var etapaVotacao = new EtapaPadraoConta("Votação", "Etapa de Votação", 3, 1, 1, ECodigoEtapaObrigatoria.Votacao); conta.AdicionarEtapaPadrao(etapaVotacao); conta.AdicionarEtapaPadrao(etapaConvocacao); conta.AdicionarEtapaPadrao(etapaInscricao); var exception = Assert.Throws <CustomException>(() => conta.AdicionarEtapaPadrao(new EtapaPadraoConta("Etapa Duplicada", string.Empty, 2, 1, 1, ECodigoEtapaObrigatoria.Inscricao))); Assert.Equal("Já há uma etapa correspondente à etapa obrigatória 'Etapa Obrigatória Inscrição'.", exception.Message); }
public EtapaPadraoConta AtualizarEtapaPadrao(int contaId, EtapaPadraoConta etapaPadrao) { var conta = _repositoryBase.BuscarPeloId(contaId); if (conta == null) { throw new NotFoundException("Conta não encontrada."); } var etapaPadraoExistente = conta.BuscarEtapaPadraoPeloId(etapaPadrao.Id); if (etapaPadraoExistente == null) { throw new NotFoundException("Etapa não encontrada."); } etapaPadraoExistente.Nome = etapaPadrao.Nome; etapaPadraoExistente.Descricao = etapaPadrao.Descricao; etapaPadraoExistente.DuracaoPadrao = etapaPadrao.DuracaoPadrao; conta.AtualizarEtapaPadrao(etapaPadraoExistente); base.Atualizar(conta); return(etapaPadraoExistente); }