public void RegisterRaceEndNoError() { var viewModel = new RegisterRaceEndViewModel(); var result = _Sut.RegisterRaceEnd(viewModel); Assert.IsInstanceOfType(result, typeof(OkObjectResult)); Assert.AreEqual(viewModel, (result as OkObjectResult).Value); }
public void RegisterRaceEndBusinessError() { var viewModel = new RegisterRaceEndViewModel(); var exception = new BusinessException("", BLErrorCodes.Duplicate); _BLMock.Setup(bl => bl.RegisterRaceEnd(It.IsAny <Guid>(), It.IsAny <Guid>())).Throws(exception); var result = _Sut.RegisterRaceEnd(viewModel); Assert.IsInstanceOfType(result, typeof(BadRequestObjectResult)); Assert.AreEqual((int)BLErrorCodes.Duplicate, (int)(result as BadRequestObjectResult).Value); }
public void RegisterRaceEndException() { var viewModel = new RegisterRaceEndViewModel(); var exceptionMessage = "a"; var exception = new Exception(exceptionMessage); _BLMock.Setup(bl => bl.RegisterRaceEnd(It.IsAny <Guid>(), It.IsAny <Guid>())).Throws(exception); var result = _Sut.RegisterRaceEnd(viewModel); Assert.IsInstanceOfType(result, typeof(StatusCodeResult)); Assert.AreEqual(500, (result as StatusCodeResult).StatusCode); _LoggerMock.VerifyLog(LogLevel.Error, Times.Once, $"Error in {typeof(AppApiController)}: {exceptionMessage}"); }
public IActionResult RegisterRaceEnd(RegisterRaceEndViewModel viewModel) { if (!ModelState.IsValid) { return(BadRequest()); } try { _AppApiBL.RegisterRaceEnd(viewModel.RaceId, viewModel.UniqueId); return(Ok(viewModel)); } catch (BusinessException ex) { return(BadRequest((ErrorCodes)ex.ErrorCode)); } catch (Exception ex) { _Logger.LogError(ex, $"Error in {typeof(AppApiController)}: {ex.Message}"); return(StatusCode(500)); } }