public async Task Index_ReturnsAViewResult_WithSuccessStoryViewModel()
        {
            // Arrange
            var controller = new SubmitStoryController(_successStoryServiceMock.Object, _notificationServiceMock.Object);

            // Act
            var result = controller.Index();

            // Assert
            var viewResult = Assert.IsType <ViewResult>(result);

            Assert.IsAssignableFrom <SuccessStoryViewModel>(
                viewResult.ViewData.Model);
        }
        public async Task Create_CallsService()
        {
            var context = new Mock <HttpContextBase>();
            var request = new Mock <HttpRequestBase>();

            request.Setup(r => r.Url).Returns(new Uri("http://www.google.com"));
            context
            .Setup(c => c.Request)
            .Returns(request.Object);
            _successStoryServiceMock.Setup(x => x.CreateSuccessStory(It.IsAny <SuccessStoryViewModel>(), It.IsAny <string>()));
            var story = new SuccessStoryViewModel();
            var cntlr = new SubmitStoryController(_successStoryServiceMock.Object, _notificationServiceMock.Object);

            cntlr.ControllerContext = new ControllerContext(context.Object, new RouteData(), cntlr);
            cntlr.Create(story);

            _successStoryServiceMock.Verify(x => x.CreateSuccessStory(It.IsAny <SuccessStoryViewModel>(), It.IsAny <string>()), Times.Once);
        }