public void GetMaintenanceTask_ShouldCallRepository_GetTaskWithCorrectId()
        {
            var controller = new MaintenanceTaskController(_mockRepo.Object);
            var id         = 1;

            controller.GetMaintenanceTask(id);

            _mockRepo.Verify(m => m.GetTask(id));
        }
        public void GetMaintenanceTask_ShouldReturnNotFound_GivenNoTaskReturnedFromRepo()
        {
            var controller = new MaintenanceTaskController(_mockRepo.Object);
            var id         = 1;

            _mockRepo.Setup(m => m.GetTask(id)).Returns((MaintenanceTask)null);

            IHttpActionResult result = controller.GetMaintenanceTask(id);

            Assert.IsInstanceOfType(result, typeof(NotFoundResult));
        }
        public void GetMaintenanceTask_ShouldReturnTask_GivenTaskReturnedFromRepo()
        {
            var id   = 1;
            var task = new MaintenanceTask()
            {
                Id = id
            };
            var controller = new MaintenanceTaskController(_mockRepo.Object);

            _mockRepo.Setup(m => m.GetTask(id)).Returns(task);

            IHttpActionResult actionResult = controller.GetMaintenanceTask(id);
            var result = actionResult as OkNegotiatedContentResult <MaintenanceTask>;

            Assert.IsNotNull(result);
            Assert.IsNotNull(result.Content);
            Assert.AreEqual(task, result.Content);
        }