Example #1
0
        public void StartGameRoomSameNameAsGameRoomCommandTest()
        {
            // Arrange
            var repositoryMock = new Mock <IRepository <Klant, long> >(MockBehavior.Strict);
            var publisherMock  = new Mock <IEventPublisher>(MockBehavior.Strict);

            repositoryMock.Setup(x => x.Insert(It.IsAny <Klant>())).Returns(1);
            publisherMock.Setup(x => x.Publish(It.IsAny <DomainEvent>()));

            var target = new KlantService(repositoryMock.Object, publisherMock.Object);
            var klant  = new Klant()
            {
                Voorletters = "YP", Achternaam = "Keemink"
            };

            // Act
            var result = target.CreateKlant(klant);

            // Assert
            repositoryMock.Verify(x => x.Insert(It.IsAny <Klant>()), Times.Once());
            publisherMock.Verify(x => x.Publish(It.IsAny <DomainEvent>()), Times.Once());

            Assert.IsNotNull(result);
            Assert.AreEqual(klant.Voorletters, result.Voorletters);
            Assert.AreEqual(klant.Achternaam, result.Achternaam);
        }
Example #2
0
        public void StartGameProcessesCommandTest()
        {
            // Arrange
            var repositoryMock = new Mock <IRepository <Klant, long> >(MockBehavior.Strict);
            var publisherMock  = new Mock <IEventPublisher>(MockBehavior.Strict);

            repositoryMock.Setup(x => x.Insert(It.IsAny <Klant>())).Returns(1);
            publisherMock.Setup(x => x.Publish(It.IsAny <DomainEvent>()));

            var target = new KlantService(repositoryMock.Object, publisherMock.Object);
            var klant  = new Klant();

            // Act
            target.CreateKlant(klant);

            // Assert
            repositoryMock.Verify(x => x.Insert(It.IsAny <Klant>()), Times.Once());
            publisherMock.Verify(x => x.Publish(It.IsAny <DomainEvent>()), Times.Once());
        }
Example #3
0
 public IActionResult CreateKlant([FromBody] Klant klant)
 {
     if (!ModelState.IsValid)
     {
         var error = new ErrorMessage(ErrorTypes.BadRequest, "Modelstate Invalide");
         return(BadRequest(error));
     }
     try
     {
         _service.CreateKlant(klant);
         return(Ok(klant));
     }
     catch (Exception e)
     {
         ExceptionEventPublisher.PublishException(e);
         var error = new ErrorMessage(ErrorTypes.Unknown,
                                      $"Onbekende fout met volgende Command: RoomName:{klant.Voorletters}, TimeStamp:{DateTime.UtcNow} {e}");
         return(BadRequest(error));
     }
 }