public void Devo_Conseguir_Validar_CNPJ_De_Uma_Empresa_Nova_Se_Nao_Houver_Outra_Empresa_Cadastrada() { Empresa novaEmpresa = this._empresaPadrao; novaEmpresa.AdicionaDocumento(new CNPJ("12345678901234")); ValidadorEmpresa validador = new ValidadorEmpresa(null); validador.ValidarDuplicidadeCNPJDeNovaEmpresa(novaEmpresa); }
public void Nao_Devo_Conseguir_Validar_Sem_Nenhum_Endereco_Comercial() { this._empresaPadrao.AdicionaDocumento(new CNPJ("12345678901234")); this._empresaPadrao.AdicionaTelefone(this._telefonePadrao); ValidadorEmpresa validador = new ValidadorEmpresa(null); try { validador.ValidarCamposObrigatorios(this._empresaPadrao); } catch (ExcecaoEnderecoComercialNaoInformado) { this._empresaPadrao.AdicionaEndereco(new Endereco("Rua de teste", "823", new CEP("86430-000"), CidadeStub.GetInstance(1, "SANTO ANTÔNIO DA PLATINA", EstadoStub.GetInstance(1, "PR")), TipoEndereco.Cobranca)); validador.ValidarCamposObrigatorios(this._empresaPadrao); } }
public void Nao_Devo_Conseguir_Validar_Sem_Nenhum_CNPJ_Adicionado() { this._empresaPadrao.AdicionaTelefone(this._telefonePadrao); this._empresaPadrao.AdicionaEndereco(this._enderecoPadrao); ValidadorEmpresa validador = new ValidadorEmpresa(null); try { validador.ValidarCamposObrigatorios(this._empresaPadrao); } catch (ExcecaoCNPJNaoInformado) { this._empresaPadrao.AdicionaDocumento(new IE("06388715907")); validador.ValidarCamposObrigatorios(this._empresaPadrao); } }
public void Nao_Devo_Conseguir_Validar_Sem_Nenhum_Telefone_Adicionado() { this._empresaPadrao.AdicionaDocumento(new CNPJ("12345678901234")); this._empresaPadrao.AdicionaEndereco(this._enderecoPadrao); ValidadorEmpresa validador = new ValidadorEmpresa(null); try { validador.ValidarCamposObrigatorios(this._empresaPadrao); } catch (ExcecaoNenhumTelefoneInformado) { this._empresaPadrao.AdicionaTelefone(this._telefonePadrao); this._empresaPadrao.RemoveTelefone(this._telefonePadrao); validador.ValidarCamposObrigatorios(this._empresaPadrao); } }
public void Nao_Devo_Conseguir_Validar_Uma_Nova_Empresa_Com_CNPJ_Cadastrado_Para_Outra_Empresa() { Empresa novaEmpresa = this._empresaPadrao; novaEmpresa.AdicionaDocumento(new CNPJ("12345678901234")); Empresa empresaCadastradaNoBancoDeDados = EmpresaStub.GetInstance(1, "UENP Universidade", DateTime.Now); empresaCadastradaNoBancoDeDados.AdicionaDocumento(new CNPJ("12345678901234")); ValidadorEmpresa validador = new ValidadorEmpresa(empresaCadastradaNoBancoDeDados); validador.ValidarDuplicidadeCNPJDeNovaEmpresa(novaEmpresa); }
public void Nao_Devo_Conseguir_Validar_Uma_Empresa_Em_Alteracao_Com_CNPJ_Cadastrado_Para_Outra_Empresa() { Empresa empresaEmAlteracao = EmpresaStub.GetInstance(1, "MR VIDRACARIA", DateTime.Now); empresaEmAlteracao.AdicionaDocumento(new CNPJ("12345678901234")); Empresa empresaCadastradaNoBancoDeDados = EmpresaStub.GetInstance(2, "UENP Universidade", DateTime.Now); empresaCadastradaNoBancoDeDados.AdicionaDocumento(new CNPJ("12345678901234")); ValidadorEmpresa validador = new ValidadorEmpresa(empresaCadastradaNoBancoDeDados); validador.ValidarDuplicidadeCNPJDeEmpresaEmAlteracao(empresaEmAlteracao); }
public Boolean Gravar(DTOPessoa dtoEmpresaQueVaiSerPersistida) { if (dtoEmpresaQueVaiSerPersistida == null) return false; Pessoa pessoa = this._repositorio.Obter(dtoEmpresaQueVaiSerPersistida.ID); if (pessoa == null) pessoa = new Empresa(dtoEmpresaQueVaiSerPersistida.Nome, dtoEmpresaQueVaiSerPersistida.DtNascimento); else { pessoa.Nome = dtoEmpresaQueVaiSerPersistida.Nome; pessoa.DtNascimento = dtoEmpresaQueVaiSerPersistida.DtNascimento; } pessoa.LimparColecoes(); foreach (DTODocumento dto in dtoEmpresaQueVaiSerPersistida.Documentos) pessoa.AdicionaDocumento(dto.ConverteDTOParaDocumento()); foreach (DTOTelefone dto in dtoEmpresaQueVaiSerPersistida.Telefones) pessoa.AdicionaTelefone(dto.ConverteDTOParaTelefone()); foreach (DTOEndereco dto in dtoEmpresaQueVaiSerPersistida.Enderecos) pessoa.AdicionaEndereco(dto.ConverteDTOParaEndereco(x => this._repositorioCidade.Obter(x.ID))); DTODocumento dtoDocumento = dtoEmpresaQueVaiSerPersistida.Documentos.SingleOrDefault(d => (d.TipoDocumento.Equals(TipoDocumento.CNPJ))); CNPJ cnpj; try { cnpj = dtoDocumento.ValorDocumento; } catch (NullReferenceException) { cnpj = null; } Pessoa pessoaComOMesmoCNPJ = this._repositorio.ObterPorDocumento(cnpj); Empresa empresaEncontradaNoBD; if (pessoaComOMesmoCNPJ != null) empresaEncontradaNoBD = (Empresa)pessoaComOMesmoCNPJ; else empresaEncontradaNoBD = null; // Efetuando as validações ValidadorEmpresa validador = new ValidadorEmpresa(empresaEncontradaNoBD); Empresa empresaQueVaiSerPersistida = (Empresa)pessoa; validador.ValidarCamposObrigatorios(empresaQueVaiSerPersistida); if (dtoEmpresaQueVaiSerPersistida.IsNovo()) validador.ValidarDuplicidadeCNPJDeNovaEmpresa(empresaQueVaiSerPersistida); else validador.ValidarDuplicidadeCNPJDeEmpresaEmAlteracao(empresaQueVaiSerPersistida); this._repositorio.Salvar(pessoa); dtoEmpresaQueVaiSerPersistida.ID = pessoa.Id; ; return true; }