public async void Employee_AoCriarumEmployeeComComandoInvalido_RetornarNotificacoesComFalha() { //-------- -------------------------- Arrange -----------------------------// var commandBusiness = new OperationProfitRequest { BonusDistribuided = " " }; var command = new List <EmployeeRequest>() { new EmployeeRequest { Matricula = null, Nome = null, Area = null, Cargo = null, SalarioBruto = "R$ 10000", DataDeAdmissao = DateTime.Now } }; //adicionar pedido _mocker.GetMock <IBusinessApplication>() .Setup(p => p.Add(commandBusiness)); //----------------------------------- Act --------------------------------// var responseResult = await _handler.AddAsync(command); // ---------------------------------- Assert ------------------------------// Assert.True(responseResult.HasFails); }
public async void Employee_AdicionarUmBonusAoFuncionarioComValorSerDistribuidoInsuficiente_RetornarNotificacoesComFalha() { //---------------------------- Arrange -------------------------// var commandBusiness = new OperationProfitRequest { BonusDistribuided = "R$ " }; //adicionar a valor ser a distribuido _mocker.GetMock <IBusinessApplication>() .Setup(p => p.Add(commandBusiness)) ; var command = new List <EmployeeRequest>() { new EmployeeRequest { Matricula = "0007676", Nome = "Maricela Martin", Area = "Serviços Gerais", Cargo = "Copeiro", SalarioBruto = "R$ 1.591,69", DataDeAdmissao = DateTime.Parse("2018-01-17") } }; //--------------------------------- Act ----------------------------// var responseResult = await _handler.AddAsync(command); //--------------------------------- Assert -------------------------// Assert.True(responseResult.HasFails); }
public async Task Employee_NaoCriarEmployee_Retornar400BadRequest() { var commandBusiness = new OperationProfitRequest { BonusDistribuided = " " }; var commandEmployeeRequest = new List <EmployeeRequest>() { new EmployeeRequest { Matricula = "0007676", Nome = "Maricela Martin", Area = "Serviços Gerais", Cargo = "Copeiro", SalarioBruto = "R$ 1.591,69", DataDeAdmissao = DateTime.Parse("2018-01-17") } }; // Act var postResponseBusiness = _testsFixture.Client.PostAsJsonAsync("/api/business/business", commandBusiness); var postResponse = await _testsFixture.Client.PostAsJsonAsync("/api/employee/bonus", commandEmployeeRequest); // Assert Assert.Equal(HttpStatusCode.BadRequest, postResponse.StatusCode); }
public ActionResult BonusCreate([FromBody] OperationProfitRequest operationProfitRequest) { var result = _businessAplication.Add(operationProfitRequest); if (result.HasFails) { _logger.LogError(default(EventId), $"Found fails to {nameof(BusinessController)} in BonusCreate {result.Fails}"); return(BadRequest(result.Fails)); } return(this.Ok(result.Data)); }
public async Task Business_CriarValorBonusDistribuido_Retornar200OKSucesso() { // Arrange var commandBusiness = new OperationProfitRequest { BonusDistribuided = "R$ 5000" }; // Act var postResponseBusiness = await _testsFixture.Client.PostAsJsonAsync("/api/business/business", commandBusiness); // Assert postResponseBusiness.EnsureSuccessStatusCode(); }
public void Business_AdicionarUmValoraSerDistribuidoComComandoInvalido_RetornarNotificacoesComFalha() { //----------------------------------- Arrange -------------------------// var command = new OperationProfitRequest { BonusDistribuided = null }; //----------------------------------- Act ----------------------------// var responseResult = _handler.Add(command); //---------------------------------- Assert --------------------------// Assert.True(responseResult.HasFails); }
public ResponseResult Add(OperationProfitRequest operationProfitRequest) { var _response = new ResponseResult(); try { operationProfitRequest.Validate(); if (operationProfitRequest.Notifications.Any()) { _response.AddNotifications(operationProfitRequest.Notifications); return(_response); } var value = 0.0m; if (operationProfitRequest.IsValid()) { value = Convert.ToDecimal(operationProfitRequest.BonusDistribuided.Remove(0, 3)); } var entidade = new OperationProfit(value); _unitOfWork.Business.Add(_cacheConfig.Value.Key, entidade); _response.AddValue(new { Status = "Cadastro realizado com sucesso" }); } catch (ArgumentNullException ex) { _response.AddNotification(new Notification(nameof(BusinessApplication), $"Falha na operação {ex.Message}")); _logger.LogError(default(EventId), $"Found fails to {nameof(BusinessApplication)} in AddAsync{ex.Message} to {nameof(operationProfitRequest)}"); throw; } catch (Exception ex) { _response.AddNotification(new Notification(nameof(BusinessApplication), $"Falha na operação {ex.Message}")); _logger.LogError(default(EventId), $"Found fails to {nameof(BusinessApplication)} in AddAsync{ex.Message} to {nameof(operationProfitRequest)}"); throw; } return(_response); }
public async void Employee_AdicionarUmBonusAoFuncionarioComValorNuloParaComando_RetornarException() { //---------------------------- Arrange -------------------------// var commandBusiness = new OperationProfitRequest { BonusDistribuided = "R$ 1.000.000,00 " }; //adicionar a valor ser a distribuido _mocker.GetMock <IBusinessApplication>() .Setup(p => p.Add(commandBusiness)) ; var command = new List <EmployeeRequest>(); command = null; var expected = "Error objeto passado nulo"; //--------------------------------- Act ----------------------------// var actual = Assert.ThrowsAsync <ArgumentNullException>(() => _handler.AddAsync(command)); //--------------------------------- Assert -------------------------// Assert.NotNull(actual); // Assert.Equal(expected:expected, actual:actual.Result.Message); }