public void DeveCriarOCargoDoFuncionarioValido() { var cargoDoFuncionario = new CargoDoFuncionario(_funcionario, _cargo, _dataDeVinvulo); Assert.Equal(_funcionario, cargoDoFuncionario.Funcionario); Assert.Equal(_funcionario.Id, cargoDoFuncionario.FuncionarioId); Assert.Equal(_cargo, cargoDoFuncionario.Cargo); Assert.Equal(_cargo.Id, cargoDoFuncionario.CargoId); Assert.Equal(_dataDeVinvulo, cargoDoFuncionario.DataDeVinculo); Assert.True(cargoDoFuncionario.Validar()); }
public async Task Vincular(CargoDoFuncionarioDto cargoDoFuncionarioDto) { var funcionario = await _funcionarioRepositorio.ObterPorIdAsync(cargoDoFuncionarioDto.FuncionarioId); var cargo = await _cargoRepositorio.ObterPorIdAsync(cargoDoFuncionarioDto.CargoId); var cargoDoFuncionario = new CargoDoFuncionario(funcionario, cargo, cargoDoFuncionarioDto.DataDeVinculo); if (!cargoDoFuncionario.Validar()) { await NotificarValidacoesDeDominioAsync(cargoDoFuncionario.ValidationResult); return; } await _funcionarioRepositorio.AdicionarCargoParaFuncionarioAsync(cargoDoFuncionario); }