public void DetailsMethodShouldThrowIfTorrentDbIsEmpty()
        {
            int id = 1;

            var list = new List<Torrent>();

            var uowDataMock = new Mock<IUowData>();
            uowDataMock.Setup(x => x.Torrents.All()).Returns(list.AsQueryable());
            var torrentRepoMock = uowDataMock.Object.Torrents;
            var controller = new TorrentsController(uowDataMock.Object);
            var viewResult = controller.Details(id) as ViewResult;
            Assert.IsNotNull(viewResult, "Details action returns null.");
            var model = viewResult.Model as TorrentViewModel;
            Assert.IsNotNull(model, "The model is null.");
            Assert.AreEqual(id, model.Id);
        }
        public void GetTorrentsMethodShouldReturnProperNumberOfTorrents()
        {
            var list = new List<Torrent>();
            list.Add(new Torrent());
            list.Add(new Torrent());

            var uowDataMock = new Mock<IUowData>();
            uowDataMock.Setup(x => x.Torrents.All()).Returns(list.AsQueryable());
            var torrentRepoMock = uowDataMock.Object.Torrents;
            var controller = new TorrentsController(uowDataMock.Object);
            var viewResult = controller.GetTorrents(new DataSourceRequest()) as JsonResult;
            Assert.IsNotNull(viewResult, "Index action returns null.");
            var data = viewResult.Data as DataSourceResult;
            var model = data.Data as IEnumerable<TorrentViewModel>;
            Assert.IsNotNull(model, "The model is null.");
            Assert.AreEqual(2, model.Count());
        }
        public void IndexMethodShouldReturnProperNumberOfTorrentsWhenModelIsEmpty()
        {
            var list = new List<Torrent>();

            var uowDataMock = new Mock<IUowData>();
            uowDataMock.Setup(x => x.Torrents.All()).Returns(list.AsQueryable());
            var torrentRepoMock = uowDataMock.Object.Torrents;
            var controller = new TorrentsController(uowDataMock.Object);
            var viewResult = controller.Index() as ViewResult;
            Assert.IsNotNull(viewResult, "Index action returns null.");
            var model = viewResult.Model as IEnumerable<TorrentViewModel>;
            Assert.IsNotNull(model, "The model is null.");
            Assert.AreEqual(0, model.Count());
        }