public async Task GetReturnsInstructorOut()
        {
            //Arrange
            var route = _configMock.Object.Routes.MapHttpRoute("default", "api/{controller}/{id}");

            _routeDataMock = new Mock <HttpRouteData>(route, new HttpRouteValueDictionary {
                { "controller", "Instructor" }
            });
            _instructorServiceMock.Setup(mock => mock.GetInstructor(3)).ReturnsAsync(() => _instructorOut);

            var controller = new InstructorController(_instructorServiceMock.Object);

            controller.ControllerContext = new HttpControllerContext(_configMock.Object, _routeDataMock.Object, _requestMock.Object);
            controller.Request           = _requestMock.Object;
            controller.Request.Properties[HttpPropertyKeys.HttpConfigurationKey] = _configMock.Object;

            //Act
            IHttpActionResult actionResult = await controller.Get(3);

            var           contentResult = actionResult as OkNegotiatedContentResult <InstructorOut>;
            InstructorOut instructor    = contentResult.Content as InstructorOut;

            //Assert
            Assert.IsNotNull(contentResult);
            Assert.IsNotNull(contentResult.Content);
            Assert.IsInstanceOfType(instructor, typeof(InstructorOut));
            Assert.AreEqual(instructor.Id, 3);
        }
        public void Setup()
        {
            _instructorOut           = TestDataHelper.InstructorData.GetInstructorOut();
            _instructorsOut          = TestDataHelper.InstructorData.GetInstructorsOut().ToList();
            _instructorWithCoursesIn = TestDataHelper.InstructorData.GetInstructorWithCoursesIn();

            _instructorServiceMock = new Mock <IInstructorService>();
            _requestMock           = new Mock <HttpRequestMessage>(HttpMethod.Get, "http://localhost:54025");
        }