public void IndexViewTest()
{
var service = new Mock<IGuestBookService>();
const int bookId = 1;
service.Setup(s => s.GetDefaultGuestBook(bookId)).Returns(new GuestBookModel()
{
GuestBookId = bookId,
GuestBookName = "Book name"
});
var messageModels = new List<MessageModel>
{
new MessageModel() { MessageId = 1, Body = "message 1"},
new MessageModel() { MessageId = 2, Body = "message 2"}
};
service.Setup(s2 => s2.LoadMessagesInBook(bookId)).Returns(messageModels);
var home = new HomeController(service.Object);
var result = home.Index(1) as ViewResult;
Assert.IsNotNull(result);
var model = result.Model as GuestBook.ModelView.MessagesInGuestBooksModelview;
Assert.IsNotNull(model);
Assert.AreEqual(model.Messages.Count(), messageModels.Count);
Assert.AreEqual(result.ViewName, MVC.Home.Views.Index);
}