public async Task GetDelivery_Should_Get_Delivery_If_ID_Passed()
        {
            var deliveries = SampleData.GetDeliveryView();

            deliveryService.Setup(x => x.GetDelivery(It.IsAny <int>())).ReturnsAsync(deliveries[0]);

            var result = await deliveryController.GetDelivery(It.IsAny <int>());

            Assert.IsNotNull(result);
        }
        public void TestGetDeliveryByID()
        {
            var deliveryService = new Mock <IDeliveryBusinessLayer>();

            deliveryService.Setup(x => x.GetDeliveryByID(1)).Returns(testdelivery);

            var controller = new DeliveryController(deliveryService.Object);

            IHttpActionResult actionResult = controller.GetDelivery(1);
            var contentResult = actionResult as OkNegotiatedContentResult <Delivery>;

            Assert.IsNotNull(contentResult);
            Assert.IsNotNull(contentResult.Content);
            Assert.AreEqual(1, contentResult.Content.DeliveryID);
        }
        public void GetDelivery_ReturnsCorrectViewResult()
        {
            // Arrange
            Mock <IDeliveryProvider> deliveryProviderMock = new Mock <IDeliveryProvider>();

            deliveryProviderMock.Setup(x => x.GetById(1))
            .Returns(deliveries[0]);
            Mock <IDeliveryHandler>   deliveryHandlerMock   = new Mock <IDeliveryHandler>();
            Mock <IDeliveryValidator> deliveryValidatorMock = new Mock <IDeliveryValidator>();

            DeliveryController controller = new DeliveryController(deliveryProviderMock.Object, deliveryHandlerMock.Object, deliveryValidatorMock.Object);
            // Act
            ViewResult result = controller.GetDelivery(1) as ViewResult;

            // Assert
            Assert.IsNotNull(result);
            Assert.IsTrue(((Delivery)result.Model).Id != default(int));
            Assert.AreEqual("GetDelivery", result.ViewName);
        }