public void NaoDeveAtualizarQuandoNaoEncontrarFuncionario() { FuncionarioDto funcionario = new FuncionarioDto { Nome = "Marvin", Cpf = "12321025980", Inativo = false, CargoId = 1, EhHomeOffice = false, EmpresaId = 1 }; Cargo cargo = new Cargo("Tester"); Empresa empresa = new Empresa("DB1", new CNPJ("")); _empresaRepositoryMock = new Mock <IEmpresaRepository>(); _empresaRepositoryMock.Setup(mock => mock.ObterPorId(It.IsAny <int>())).Returns(empresa); _cargoRepositoryMock = new Mock <ICargoRepository>(); _cargoRepositoryMock.Setup(mock => mock.ObterPorId(It.IsAny <int>())).Returns(cargo); _funcionarioRepositoryMock = new Mock <IFuncionarioRepository>(); _funcionarioRepositoryMock.Setup(mock => mock.Atualizar(It.IsAny <Funcionario>())).Throws(new Exception()); IFuncionarioService funcionarioService = new FuncionarioService(_empresaRepositoryMock.Object, _cargoRepositoryMock.Object, _funcionarioRepositoryMock.Object); var mensagens = funcionarioService.Atualizar(funcionario, 1); _funcionarioRepositoryMock.Verify(mock => mock.Atualizar(It.IsAny <Funcionario>()), Times.Never()); Assert.Equal(1, mensagens.Count); }
public void NaoDeveAtualizarUmFuncionarioComCpfInvalido() { FuncionarioDto funcionario = new FuncionarioDto { Nome = "Marvin", Cpf = "", Inativo = false, CargoId = 1, EhHomeOffice = false, EmpresaId = 1 }; Cargo cargo = new Cargo("Tester"); Empresa empresa = new Empresa("Db1", new CNPJ("87717167000156")); _empresaRepositoryMock = new Mock <IEmpresaRepository>(); _empresaRepositoryMock.Setup(mock => mock.ObterPorId(It.IsAny <int>())).Returns(empresa); _cargoRepositoryMock = new Mock <ICargoRepository>(); _cargoRepositoryMock.Setup(mock => mock.ObterPorId(It.IsAny <int>())).Returns(cargo); _funcionarioRepositoryMock = new Mock <IFuncionarioRepository>(); _funcionarioRepositoryMock.Setup(mock => mock.Atualizar(It.IsAny <Funcionario>())); IFuncionarioService funcionarioService = new FuncionarioService(_empresaRepositoryMock.Object, _cargoRepositoryMock.Object, _funcionarioRepositoryMock.Object); var mensagens = funcionarioService.Atualizar(funcionario, 1); _funcionarioRepositoryMock.Verify(mock => mock.Atualizar(It.IsAny <Funcionario>()), Times.Never()); Assert.Equal(1, mensagens.Count); }
public IActionResult Atualizar(string id, Funcionarios funcionarioIn) { var funcionario = _funcionarioService.Get(id); if (funcionario == null) { return(NotFound()); } _funcionarioService.Atualizar(id, funcionarioIn); return(NoContent()); }
public void FuncionarioIntegracaoSistema_Atualizar_DeveSerValido() { //Cenário Funcionario funcionarioParaEditar = _funcionarioService.Obter(1); funcionarioParaEditar.Id = 1; string nomeAntigo = funcionarioParaEditar.Nome; string nomeNovo = "Nome"; if (nomeAntigo == nomeNovo) { nomeNovo = "Nome novo"; } funcionarioParaEditar.Nome = nomeNovo; //Ação Funcionario funcionarioResultado = _funcionarioService.Atualizar(funcionarioParaEditar); //Verificar funcionarioResultado.Nome.Should().NotBe(nomeAntigo); funcionarioResultado.Id.Should().Be(funcionarioParaEditar.Id); }
public void FuncionarioService_Atualizar_DeveSerValido() { //Cenário Funcionario funcionario = ObjectMother.ObterFuncionarioValido(); funcionario.Id = 1; _mockFuncionarioRepositorio.Setup(rp => rp.Atualizar(funcionario)).Returns(new Funcionario { Id = funcionario.Id, Cargo = "cargo", Nome = "nome", Ramal = "ramal" }); //Ação Funcionario retorno = _funcionarioService.Atualizar(funcionario); //Verificar _mockFuncionarioRepositorio.Verify(rp => rp.Atualizar(funcionario)); retorno.Should().NotBeNull(); retorno.Id.Should().Be(funcionario.Id); }
public async Task AtualizarComEnderecoTelefone_OK_Quando_Registro_Existe() { var person = _faker.Person; var id = Guid.NewGuid(); var telsNovo = new List <Telefone> { new Telefone("+55", "11", "90000-0000", id), new Telefone("+55", "11", "80000-0000", id) }; var enderecoNovo = new Endereco("Rua", 11, "00000-000", "apt", "bairro", "cidade", "sp", Cadastro.Domain.Enums.TipoEnderecoEnum.Comercial, id); var funcionarioAtualizado = new Funcionario(id.ToString(), "matricular", "cargo 2", new Nome(person.FirstName, "Silva Sauro"), new DataNascimento(new System.DateTime(1985, 08, 14)), new Email(person.Email), telsNovo, enderecoNovo, enderecoNovo); _mockFuncionarioRepositorioEscrita.Setup(x => x.RecuperarConexao()) .Returns(_mockConexao.Object); _mockFuncionarioRepositorioEscrita.Setup(x => x.IniciarTransacao()) .Returns(_mockTransacao.Object); _mockFuncionarioRepositorioLeitura.Setup(x => x.ObterPorId(It.IsAny <IDbTransaction>(), It.IsAny <Guid>())) .ReturnsAsync(new Funcionario(id.ToString(), "matricular", "cargo", new Nome(person.FirstName, "Silva"), new DataNascimento(new DateTime(1987, 08, 14)), new Email(person.Email), telsNovo, enderecoNovo, enderecoNovo)) .Callback <IDbTransaction, Guid>((transacao, id) => { Output.WriteLine($"Callback ObterPorId: {id}"); }); var service = new FuncionarioService(_mockFuncionarioRepositorioLeitura.Object, _mockFuncionarioRepositorioEscrita.Object, _mockLogger.Object); await service.Atualizar(funcionarioAtualizado); Output.WriteLine($"Result: ok"); _mockFuncionarioRepositorioLeitura.Verify(x => x.ObterPorId(It.IsAny <IDbTransaction>(), It.IsAny <Guid>()), Times.Once); }