Ejemplo n.º 1
0
        public void StockQuanity_PlaceStockOrder_ShouldOrderTheRightAmountOfEggsToMakeTiramisu()
        {
            // arrange
            var mockRepo = new Mock <IRepository>();

            mockRepo
            .Setup(x => x.GetOrderByCorrelationId(It.IsAny <Guid>()))
            .Returns(_fakeOrder);

            IStockQuantityControl sut = new StockQuantityControl();
            var orderingProcess       = new StockOrderingProcess(mockRepo.Object, sut, _mockPubliher.Object);

            var mockMechanism = new Mock <IStockOrderMechanism>();

            orderingProcess.OrderMechanism = mockMechanism.Object;

            var msg = new Message
            {
                CorrelationId = Guid.NewGuid()
            };

            //act
            orderingProcess.UpdateStock(msg);

            // assert
            mockMechanism.Verify(x => x.PlaceStockOrder(It.Is <RestaurantStock>(y => y.Eggs == 6)), Times.Once);
        }
Ejemplo n.º 2
0
        public void StockQuanity_PlaceStockOrder_ShouldCreateJsonFileWithDataOfStockOrdered()
        {
            // arrange
            var fakeOrderData = GetFakeOrderData();
            var mockRepo      = new Mock <IRepository>();

            mockRepo
            .Setup(x => x.GetOrderByCorrelationId(It.IsAny <Guid>()))
            .Returns(_fakeOrder);

            IStockQuantityControl sut = new StockQuantityControl();
            var orderingProcess       = new StockOrderingProcess(mockRepo.Object, sut, _mockPubliher.Object);

            var mockMechanism = new Mock <IStockOrderMechanism>();

            orderingProcess.OrderMechanism = new ManualOrder();

            var msg = new Message
            {
                CorrelationId = Guid.NewGuid()
            };

            //act
            orderingProcess.UpdateStock(msg);

            // assert
            var result = System.IO.File.Exists("c:\\temp\\stockorder.json");

            Assert.IsTrue(result);
        }