public void CanShowSnippet()
        {
            Mock<ISnippetRepository> repo = new Mock<ISnippetRepository>();
            repo.Setup(m => m.Snippets).Returns(new Snippet[]
            {
                new Snippet { Id = 1, Title = "T1", Content = "C1", UserId = null, User = null },
            }.AsQueryable());

            HomeController controller = new HomeController(repo.Object, null);

            var result = (controller.Show(1) as ViewResult).Model as ShowVM;

            Assert.AreEqual(1, result.Id);
            Assert.AreEqual("T1", result.Title);
            Assert.AreEqual("C1", result.Content);
            Assert.IsNull(result.UserId);
            Assert.IsNull(result.UserName);
        }
        public void InvalidSnippetIdShouldReturn404NotFound()
        {
            Mock<ISnippetRepository> repo = new Mock<ISnippetRepository>();
            repo.Setup(m => m.Snippets).Returns(new Snippet[]
            {
                new Snippet { Id = 1, Title = "T1", Content = "C1", DatePublished = DateTime.Now, UserId = 1 },
            }.AsQueryable<Snippet>);

            var controller = new HomeController(repo.Object, null);
            var result = controller.Show(2) as HttpNotFoundResult;

            Assert.IsNotNull(result);
            Assert.AreEqual(404, result.StatusCode);
        }