public void HandleApkRequestWithSteekproef() { var pubMock = new Mock <IEventPublisher>(MockBehavior.Strict); pubMock.Setup(x => x.Publish(It.IsAny <DomainEvent>())); var service = new ApkEventService(_options, pubMock.Object); long id = -1; using (var context = new OnderhoudBeheerContext(_options)) using (var repo = new OnderhoudsopdrachtRepository(context)) { id = repo.Insert(new Onderhoudsopdracht() { Kenteken = "AA-BB-11", HasApk = true, Kilometerstand = 100, OnderhoudsBeschrijving = "Achterlicht links vervangen", OpdrachtAangemaakt = DateTime.UtcNow, OpdrachtStatus = OpdrachtStatussen.Aangemeld().StatusId, OpdrachtStatusBeschrijving = OpdrachtStatussen.Aangemeld().Beschrijving, Bestuurder = "Rob", TelefoonNrBestuurder = "1232323" }); } var apkEvent = new ApkAfgemeldEvent(); apkEvent.CorrelationID = new Guid(); apkEvent.HasSteekProef = true; apkEvent.Kenteken = "12-12-12"; apkEvent.SteekProefDatum = new DateTime(2016, 12, 12); apkEvent.TimeStamp = new DateTime(); apkEvent.RoutingKey = "test"; apkEvent.OnderhoudsBeurtId = id; service.HandlerApkEvent(apkEvent); pubMock.Verify(x => x.Publish(It.IsAny <DomainEvent>()), Times.Once); using (var context = new OnderhoudBeheerContext(_options)) using (var repo = new OnderhoudsopdrachtRepository(context)) { var opdracht = repo.Find(id); Assert.AreEqual(OpdrachtStatussen.Klaargemeld().StatusId, opdracht.OpdrachtStatus); Assert.AreEqual(OpdrachtStatussen.Klaargemeld().Beschrijving, opdracht.OpdrachtStatusBeschrijving); } }
/// <summary> /// /// </summary> /// <param name="e"></param> public void HandlerApkEvent(ApkAfgemeldEvent e) { _service.HandlerApkEvent(e); }