예제 #1
0
        public async Task NieuweBestellingReturnsNieuweBestellingId()
        {
            var bestelling = new Bestelling
            {
                AdresRegel1       = "Laagstraat 11",
                Plaats            = "Laaghoven",
                Postcode          = "1234FG",
                KlantId           = "1",
                BesteldeArtikelen = new List <BestellingItem>
                {
                    new BestellingItem(1, 3),
                    new BestellingItem(2, 5)
                }
            };

            var publisherMock = new Mock <ICommandPublisher>(MockBehavior.Strict);

            publisherMock.Setup(m => m.Publish <int>(It.Is <NieuweBestellingCommand>(c => c.KlantId == "1"),
                                                     NameConstants.NieuweBestellingCommandQueue, ""))
            .ReturnsAsync(1).Verifiable();

            var datamapperMock = new Mock <IBestellingDatamapper>(MockBehavior.Strict);

            var controller = new BestellingenController(publisherMock.Object, datamapperMock.Object);

            var result = await controller.NieuweBestelling(bestelling);

            Assert.AreEqual(1, result);
        }
예제 #2
0
        public async Task BestellingAfkeurenTest()
        {
            var bestellingAfkeurenResult = new BestellingAfkeurenResult()
            {
                Id                 = 1,
                IsSuccesfull       = true,
                PassedBestellingen = new List <int>()
                {
                    5, 8, 10
                }
            };

            var publisherMock = new Mock <ICommandPublisher>(MockBehavior.Strict);

            publisherMock.Setup(p => p.Publish <BestellingAfkeurenResult>(It.Is <BestellingAfkeurenCommand>(b => b.Id == 1),
                                                                          NameConstants.BestellingAfkeurenCommandQueue, ""))
            .ReturnsAsync(bestellingAfkeurenResult).Verifiable();

            var controller = new BestellingenController(publisherMock.Object, null);

            var result = await controller.BestellingAfkeuren(1) as OkObjectResult;

            List <int> resultList = result.Value as List <int>;

            Assert.IsNotNull(resultList);
            Assert.AreEqual(3, resultList.Count);
        }
예제 #3
0
        public async Task DatamapperGetsCalledWhenGettingBestellingenBoven500()
        {
            var datamapperMock = new Mock <IBestellingDatamapper>(MockBehavior.Strict);

            datamapperMock.Setup(dm => dm.GetBestellingenBoven500()).ReturnsAsync(new List <Bestelling>()).Verifiable();

            var controller = new BestellingenController(null, datamapperMock.Object);

            await controller.GetBestellingenBoven500Eu();
        }
예제 #4
0
        public async Task BestellingGoedkeurenTest()
        {
            var publisherMock = new Mock <ICommandPublisher>(MockBehavior.Strict);

            publisherMock.Setup(p => p.Publish <int>(It.Is <BestellingGoedkeurenCommand>(b => b.Id == 1),
                                                     NameConstants.BestellingGoedKeurenCommandQueue, ""))
            .ReturnsAsync(1).Verifiable();

            var controller = new BestellingenController(publisherMock.Object, null);

            var result = await controller.BestellingGoedkeuren(1) as OkObjectResult;

            Assert.AreEqual(1, result.Value);
        }
예제 #5
0
        public async Task VolgendeBestellingReturnsNotFoundWhenNoBestellingLeft()
        {
            var publisherMock = new Mock <ICommandPublisher>(MockBehavior.Strict);

            publisherMock.Setup(m => m.Publish <int>(It.IsAny <VolgendeBestellingCommand>(),
                                                     NameConstants.VolgendeBestellingCommandQueue, ""))
            .ReturnsAsync(0).Verifiable();

            var datamapperMock = new Mock <IBestellingDatamapper>(MockBehavior.Strict);


            var controller = new BestellingenController(publisherMock.Object, datamapperMock.Object);

            var result = await controller.VolgendeBestelling();

            Assert.IsInstanceOfType(result, typeof(NotFoundResult));
        }
예제 #6
0
        public async Task FinishBestellingFinishesBestellingTest()
        {
            var publisherMock = new Mock <ICommandPublisher>(MockBehavior.Strict);

            publisherMock.Setup(m => m.Publish <int>(It.Is <BestellingAfrondenCommand>(b => b.Id == 1),
                                                     NameConstants.FinishBestellingCommandQueue, ""))
            .ReturnsAsync(1).Verifiable();

            var datamapperMock = new Mock <IBestellingDatamapper>(MockBehavior.Strict);


            var controller = new BestellingenController(publisherMock.Object, datamapperMock.Object);

            var result = await controller.FinishBestelling(1);

            Assert.AreEqual(1, result);
        }
예제 #7
0
        public BestellingenControllerTest()
        {
            DummyApplicationDbContext context = new DummyApplicationDbContext();

            _mockGebruikersRepository = new Mock <IGebruikersRepository>();
            _jan                 = context.Jan;
            _controller          = new BestellingenController(_mockGebruikersRepository.Object);
            _controller.TempData = new Mock <ITempDataDictionary>().Object;
            _model               = new NieuwViewModel(9.0M)
            {
                Elektronisch  = true,
                AantalCheques = 20,
                DebiteerDatum = DateTime.Today
            };
            _modelMetFout = new NieuwViewModel(9.0M)
            {
                Elektronisch  = true,
                AantalCheques = 70,
                DebiteerDatum = DateTime.Today
            };
        }
예제 #8
0
        public async Task VolgendeBestellingReturnsVolgendeBestellingObject()
        {
            var publisherMock = new Mock <ICommandPublisher>(MockBehavior.Strict);

            publisherMock.Setup(m => m.Publish <int>(It.IsAny <VolgendeBestellingCommand>(),
                                                     NameConstants.VolgendeBestellingCommandQueue, ""))
            .ReturnsAsync(1).Verifiable();

            var datamapperMock = new Mock <IBestellingDatamapper>(MockBehavior.Strict);

            datamapperMock.Setup(d => d.Get(1)).ReturnsAsync(new Bestelling
            {
                Id                = 1,
                KlantId           = "1",
                AdresRegel1       = "Laagstraat 11",
                Plaats            = "Laaghoven",
                Postcode          = "1234FG",
                BesteldeArtikelen = new List <BestellingItem>
                {
                    new BestellingItem(1, 3),
                    new BestellingItem(2, 5)
                }
            }).Verifiable();

            var controller = new BestellingenController(publisherMock.Object, datamapperMock.Object);

            var result = await controller.VolgendeBestelling();

            var okResult = result as OkObjectResult;

            Assert.IsNotNull(okResult);

            var bestelling = (Bestelling)okResult.Value;

            Assert.AreEqual(1, bestelling.Id);
            Assert.AreEqual("1", bestelling.KlantId);
        }