public IActionResult CreateAuto([FromBody]Auto auto) { if (!ModelState.IsValid) { var error = new ErrorMessage(ErrorTypes.BadRequest, $"Modelstate Invalide, {auto.ToString()}"); return BadRequest(error); } try { auto = _service.CreateAuto(auto); return Ok(auto); } catch (Exception e) { ExceptionEventPublisher.PublishException(e); var error = new ErrorMessage(ErrorTypes.Unknown, $"Onbekende fout met volgende Command: Kenteken:{auto?.Kenteken}, KlantId:{auto?.KlantId}, TimeStamp:{DateTime.UtcNow} {e}"); return BadRequest(error); } }
public void CreateAutoProcessesCommandTest() { // Arrange var autoRepositoryMock = new Mock <IRepository <Auto, long> >(MockBehavior.Strict); var onderhoudRepositoryMock = new Mock <IRepository <Onderhoudsopdracht, long> >(MockBehavior.Strict); var publisherMock = new Mock <IEventPublisher>(MockBehavior.Strict); autoRepositoryMock.Setup(x => x.Insert(It.IsAny <Auto>())).Returns(1); publisherMock.Setup(x => x.Publish(It.IsAny <DomainEvent>())); var target = new Services.AutoService(autoRepositoryMock.Object, onderhoudRepositoryMock.Object, publisherMock.Object); //var createAutoCommand = new CreateAutoCommand(); // Act target.CreateAuto(new Auto() { KlantId = 1, Kenteken = "AA-BB-12" }); // Assert autoRepositoryMock.Verify(x => x.Insert(It.IsAny <Auto>()), Times.Once()); publisherMock.Verify(x => x.Publish(It.IsAny <DomainEvent>()), Times.Once()); }