public void Calcular() { var command = new CalcularSeguroCommand() { CPF = "00000000191", ValorVeiculo = 10000, Marca = "Ford", Modelo = "Fiesta" }; CommandResult result = _handler.Calcular(command); Assert.AreNotEqual(null, result); var seguro = result.Value as Seguro; Assert.AreEqual(seguro.Valor, Decimal.Parse("270,37")); }
public CommandResult Calcular(CalcularSeguroCommand command) { var segurado = _seguradoService.Buscar(command.CPF); var veiculo = new Veiculo(command.ValorVeiculo, command.Marca, command.Modelo); if (segurado.Invalid) { return(new CommandResult(500, segurado.Notifications)); } else if (veiculo.Invalid) { return(new CommandResult(500, veiculo.Notifications)); } var seguro = new Seguro(veiculo, segurado); seguro.Calcular(); _repository.Incluir(seguro); return(new CommandResult(200, seguro)); }
public IActionResult Calcular([FromBody] CalcularSeguroCommand command) { var result = (CommandResult)_handler.Calcular(command); return(Ok(result.Value)); }