コード例 #1
0
        public void NaoDeveEditarFuncionarioComEspacosDepoisEAntesDoNome()
        {
            var funcionario = EmpresaBuilder.Novo().Build();

            funcionario.AlterarNome(VariaveisDeTeste.TextoComEspacoAntesEDepois);

            Assert.Equal(VariaveisDeTeste.TextoComEspacoAntesEDepois.Trim(), funcionario.Nome);
        }
コード例 #2
0
        public void NaoDeveCriarEmpresaComEspacosDepoisDoNome()
        {
            var nomeComEspacoDepois = _nome.PadRight(_tamanhoDeEspacos);
            var empresa             = EmpresaBuilder.Novo()
                                      .ComNome(nomeComEspacoDepois)
                                      .Build();

            Assert.Equal(_nome, empresa.Nome);
        }
コード例 #3
0
        public void DeveAlterarDataFundacao()
        {
            var data    = _faker.Date.Past();
            var empresa = EmpresaBuilder.Novo().Build();

            empresa.AlterarDataFundacao(data.ToShortDateString());

            Assert.Equal(data.Date, empresa.DataFundacao.Value.Date);
        }
コード例 #4
0
        public void DeveAlterarCnpj()
        {
            var cnpj    = _faker.Company.Cnpj(false);
            var empresa = EmpresaBuilder.Novo().Build();

            empresa.AlterarCnpj(cnpj);

            Assert.Equal(cnpj, empresa.Cnpj);
        }
コード例 #5
0
        public void DeveAlterarNome()
        {
            var nome    = _faker.Random.Word();
            var empresa = EmpresaBuilder.Novo().Build();

            empresa.AlterarNome(nome);

            Assert.Equal(nome, empresa.Nome);
        }
コード例 #6
0
        public void NaoDeveCriarEmpresaComMascaraNoCnpj()
        {
            var cnpjComMascara = _faker.Company.Cnpj(true);
            var empresa        = EmpresaBuilder.Novo()
                                 .ComCnpj(cnpjComMascara)
                                 .Build();

            Assert.Equal(cnpjComMascara.Replace(".", "").Replace("-", "").Replace("/", ""), empresa.Cnpj);
        }
コード例 #7
0
        public void NaoDeveCriarEmpresaComEspacosDepoisDoCnpj()
        {
            var cnpjComEspacoDepois = _cnpj.PadRight(_tamanhoDeEspacos);
            var empresa             = EmpresaBuilder.Novo()
                                      .ComCnpj(cnpjComEspacoDepois)
                                      .Build();

            Assert.Equal(_cnpj, empresa.Cnpj);
        }
コード例 #8
0
        public async Task DeveExcluirEmpresa()
        {
            var empresa = EmpresaBuilder.Novo().Build();

            _empresaRepositorioMock.Setup(r => r.ObterPorIdAsync(EmpresaId)).Returns(Task.FromResult(empresa));

            await _exclusaoDeEmpresa.Excluir(EmpresaId);

            _empresaRepositorioMock.Verify(r => r.Remover(empresa));
        }
コード例 #9
0
        public void DeveValidarNomeComoObrigatorio(string nomeInvalido)
        {
            var empresa = EmpresaBuilder.Novo()
                          .ComNome(nomeInvalido)
                          .Build();

            var resultado = empresa.Validar();

            Assert.False(resultado);
        }
コード例 #10
0
        public void DeveValidarCnpjComoObrigatorio(string cnpjInvalido)
        {
            var empresa = EmpresaBuilder.Novo()
                          .ComCnpj(cnpjInvalido)
                          .Build();

            var resultado = empresa.Validar();

            Assert.False(resultado);
        }
コード例 #11
0
        public void NaoDeveValidarNomeTamanhoMaximoExcedido(int tamanhoMaximo)
        {
            var nomeValido = _faker.Random.AlphaNumeric(tamanhoMaximo);
            var empresa    = EmpresaBuilder.Novo()
                             .ComNome(nomeValido)
                             .Build();

            var resultado = empresa.Validar();

            Assert.True(resultado);
        }
コード例 #12
0
        public void DeveValidarCnpjTamanhoInvalido(int tamanho)
        {
            var cnpjInvalido = _faker.Random.AlphaNumeric(tamanho);
            var empresa      = EmpresaBuilder.Novo()
                               .ComCnpj(cnpjInvalido)
                               .Build();

            var resultado = empresa.Validar();

            Assert.False(resultado);
        }
コード例 #13
0
        public void DeveCriarEmpresa()
        {
            var empresaEsperada = EmpresaBuilder.Novo().Build();

            var empresa = new Empresa(
                empresaEsperada.Nome,
                empresaEsperada.Cnpj
                );

            Assert.Equal(empresaEsperada.Nome, empresa.Nome);
            Assert.Equal(empresaEsperada.Cnpj, empresa.Cnpj);
        }
コード例 #14
0
        public async Task DeveNotificarErroQuandoExistirUmaOutroEmpresaComMesmoNome()
        {
            const int idDaOutroEmpresa = 1050;
            var       erroEsperado     = string.Format(CommonResources.MsgDominioComMesmoNomeNoFeminino, CommonResources.EmpresaDominio);
            var       empresaSalva     = EmpresaBuilder.Novo().ComId(idDaOutroEmpresa).Build();

            _empresaRepositorioMock.Setup(repositorio =>
                                          repositorio.ObterPorNomeAsync(_empresaDto.Nome)).Returns(Task.FromResult(empresaSalva));

            await _armazenadorDeEmpresa.Armazenar(_empresaDto);

            _notificacaoDeDominioMock.Verify(notificacao =>
                                             notificacao.HandleAsync(It.Is <DomainNotification>(d => d.Value == erroEsperado)));
        }
コード例 #15
0
        private void CriarCenarioParaEditarEmpresa(out Empresa empresaParaEdicao, out EmpresaDto empresaDto)
        {
            const int empresaId = 1;

            empresaParaEdicao = EmpresaBuilder.Novo().ComId(empresaId).Build();
            empresaDto        = new EmpresaDto
            {
                Id   = empresaId,
                Nome = _faker.Lorem.Sentence(),
                Cnpj = _faker.Company.Cnpj(true)
            };
            _empresaRepositorioMock.Setup(r => r.ObterPorIdAsync(empresaId))
            .ReturnsAsync(empresaParaEdicao);
        }
コード例 #16
0
        public async Task NaoDeveRemoverQuandoEmpresaVinculadoAFuncionario()
        {
            var empresa = EmpresaBuilder.Novo().Build();

            _empresaRepositorioMock.Setup(rep => rep.ObterPorIdAsync(EmpresaId)).Returns(Task.FromResult(empresa));

            var funcionario = new Funcionario("nome", "12345678909");

            _funcionarioRepositorioMock.Setup(rep => rep.ObterPorEmpresaIdAsync(empresa.Id)).Returns(Task.FromResult(funcionario));

            await _exclusaoDeEmpresa.Excluir(EmpresaId);

            _notificacaoDeDominioMock.Verify(notificacao =>
                                             notificacao.HandleAsync(It.Is <DomainNotification>(
                                                                         d => d.Value == CommonResources.MsgEmpresaEstaVinculadoComFuncionario
                                                                         ))
                                             );
        }