public void Setup() { var profile = new Profile { Id = 1, Cutoff = Quality.WEBDL480p, Items = new List <ProfileQualityItem> { new ProfileQualityItem { Allowed = true, Quality = Quality.SDTV }, new ProfileQualityItem { Allowed = true, Quality = Quality.WEBDL480p }, new ProfileQualityItem { Allowed = true, Quality = Quality.RAWHD } } }; _monitoredSeries = Builder <Series> .CreateNew() .With(s => s.TvRageId = RandomNumber) .With(s => s.Runtime = 30) .With(s => s.Monitored = true) .With(s => s.TitleSlug = "Title3") .With(s => s.Id = profile.Id) .BuildNew(); _unmonitoredSeries = Builder <Series> .CreateNew() .With(s => s.TvdbId = RandomNumber) .With(s => s.Runtime = 30) .With(s => s.Monitored = false) .With(s => s.TitleSlug = "Title2") .With(s => s.Id = profile.Id) .BuildNew(); _monitoredSeries.Id = Db.Insert(_monitoredSeries).Id; _unmonitoredSeries.Id = Db.Insert(_unmonitoredSeries).Id; _pagingSpec = new PagingSpec <Episode> { Page = 1, PageSize = 10, SortKey = "AirDate", SortDirection = SortDirection.Ascending }; _qualitiesBelowCutoff = new List <QualitiesBelowCutoff> { new QualitiesBelowCutoff(profile.Id, new[] { Quality.SDTV.Id }) }; var qualityMet = new EpisodeFile { RelativePath = "a", Quality = new QualityModel { Quality = Quality.WEBDL480p } }; var qualityUnmet = new EpisodeFile { RelativePath = "b", Quality = new QualityModel { Quality = Quality.SDTV } }; var qualityRawHD = new EpisodeFile { RelativePath = "c", Quality = new QualityModel { Quality = Quality.RAWHD } }; MediaFileRepository fileRepository = Mocker.Resolve <MediaFileRepository>(); qualityMet = fileRepository.Insert(qualityMet); qualityUnmet = fileRepository.Insert(qualityUnmet); qualityRawHD = fileRepository.Insert(qualityRawHD); var monitoredSeriesEpisodes = Builder <Episode> .CreateListOfSize(4) .All() .With(e => e.Id = 0) .With(e => e.SeriesId = _monitoredSeries.Id) .With(e => e.AirDateUtc = DateTime.Now.AddDays(-5)) .With(e => e.Monitored = true) .With(e => e.EpisodeFileId = qualityUnmet.Id) .TheFirst(1) .With(e => e.Monitored = false) .With(e => e.EpisodeFileId = qualityMet.Id) .TheNext(1) .With(e => e.EpisodeFileId = qualityRawHD.Id) .TheLast(1) .With(e => e.SeasonNumber = 0) .Build(); var unmonitoredSeriesEpisodes = Builder <Episode> .CreateListOfSize(3) .All() .With(e => e.Id = 0) .With(e => e.SeriesId = _unmonitoredSeries.Id) .With(e => e.AirDateUtc = DateTime.Now.AddDays(-5)) .With(e => e.Monitored = true) .With(e => e.EpisodeFileId = qualityUnmet.Id) .TheFirst(1) .With(e => e.Monitored = false) .With(e => e.EpisodeFileId = qualityMet.Id) .TheLast(1) .With(e => e.SeasonNumber = 0) .Build(); _unairedEpisodes = Builder <Episode> .CreateListOfSize(1) .All() .With(e => e.Id = 0) .With(e => e.SeriesId = _monitoredSeries.Id) .With(e => e.AirDateUtc = DateTime.Now.AddDays(5)) .With(e => e.Monitored = true) .With(e => e.EpisodeFileId = qualityUnmet.Id) .Build() .ToList(); Db.InsertMany(monitoredSeriesEpisodes); Db.InsertMany(unmonitoredSeriesEpisodes); }