public void index_should_return_view_index()
        {
            var ideasMock = new Mock<IIdeas>();
            ideasMock.Setup(i => i.AllIdeas())
                .Returns(It.IsAny<IEnumerable<Idea>>);

            var controller = new IdeasController(ideasMock.Object);

            var actionResult = controller.Index();

            actionResult.AssertViewName("Index");
        }
        public void index_should_retrieve_all_ideas_from_the_repository()
        {
            var ideasMock = new Mock<IIdeas>(MockBehavior.Strict);
            ideasMock.Setup(i => i.AllIdeas())
                .Returns(It.IsAny<IEnumerable<Idea>>);

            var controller = new IdeasController(ideasMock.Object);

            controller.Index();

            ideasMock.Verify(i => i.AllIdeas(), Times.Once());
        }
        public void index_should_pass_1_idea_to_view_when_repository_has_only_1_idea()
        {
            var ideasMock = new Mock<IIdeas>();
            ideasMock.Setup(i => i.AllIdeas())
                .Returns(new[] { new Idea("Some idea") });

            var controller = new IdeasController(ideasMock.Object);

            var actionResult = controller.Index();

            Assert.AreEqual(1, actionResult
                                    .WithModelAs<IEnumerable<Idea>>()
                                    .Count());
        }