public void ShouldUpdateSimilarPrograms() { var programA = new GuideEnricherProgram( new GuideProgram { Title = "Intervention", SubTitle = "Sarah; Mikeal", PreviouslyAiredTime = new DateTime(2011, 6, 27), GuideProgramId = Guid.NewGuid() }); var programB = new GuideEnricherProgram( new GuideProgram { Title = "Intervention", SubTitle = "Sarah; Mikeal", GuideProgramId = Guid.NewGuid() }); var matchedSeries = new GuideEnricherSeries("Intervention", false, false, false); var pendingSeries = new List <GuideEnricherProgram>(1) { programB }; matchedSeries.AddProgram(programA); var similarPrograms = matchedSeries.FindSimilarPrograms(pendingSeries, programA); similarPrograms.Count.ShouldEqual(1); }
public void ShouldUpdateSimilarPrograms() { var programA = new GuideEnricherProgram( new GuideProgram { Title = "Intervention", SubTitle = "Sarah; Mikeal", PreviouslyAiredTime = new DateTime(2011, 6, 27), GuideProgramId = Guid.NewGuid() }); var programB = new GuideEnricherProgram( new GuideProgram { Title = "Intervention", SubTitle = "Sarah; Mikeal", GuideProgramId = Guid.NewGuid() }); var matchedSeries = new GuideEnricherSeries("Intervention", false, false, false); var pendingSeries = new List<GuideEnricherProgram>(1) { programB }; matchedSeries.AddProgram(programA); var similarPrograms = matchedSeries.FindSimilarPrograms(pendingSeries, programA); similarPrograms.Count.ShouldEqual(1); }
private void EnrichProgramsInSeries(GuideEnricherSeries series, TvdbSeries OnlineSeries) { this.tvdbLibAccess.DebugEpisodeDump(OnlineSeries); do { GuideEnricherProgram guideProgram = series.PendingPrograms[0]; this.tvdbLibAccess.EnrichProgram(guideProgram, OnlineSeries); if (guideProgram.Matched) { series.AddAllToEnrichedPrograms(guideProgram); } else { series.AddAllToFailedPrograms(guideProgram); } }while (series.PendingPrograms.Count > 0); }
public void EnrichSeries(GuideEnricherSeries series) { series.TvDbSeriesID = this.tvdbLibAccess.getSeriesId(series.Title); if (series.TvDbSeriesID == 0) { series.isIgnored = true; } if (series.isIgnored) { series.IgnoredPrograms.AddRange(series.PendingPrograms); series.PendingPrograms.Clear(); } if (series.PendingPrograms.Count > 0) { log.DebugFormat("Beginning enrichment of episodes for series {0}", series.Title); var onlineSeries = this.tvdbLibAccess.GetTvdbSeries(series.TvDbSeriesID, false); this.EnrichProgramsInSeries(series, onlineSeries); if (series.FailedPrograms.Count > 0) { log.DebugFormat("The first run for the series {0} had unmatched episodes. Checking for online updates.", series.Title); List <string> currentTvDbEpisodes = new List <string>(); onlineSeries.Episodes.ForEach(x => currentTvDbEpisodes.Add(x.EpisodeName)); TvdbSeries updatedOnlineSeries = this.tvdbLibAccess.GetTvdbSeries(series.TvDbSeriesID, true); if (updatedOnlineSeries.Episodes.FindAll(x => !currentTvDbEpisodes.Contains(x.EpisodeName)).Count > 0) { log.DebugFormat("New episodes were found. Trying enrichment again."); series.TvDbInformationRefreshed(); this.EnrichProgramsInSeries(series, updatedOnlineSeries); } } this.enrichedPrograms.AddRange(series.SuccessfulPrograms); } }
private void EnrichProgramsInSeries(GuideEnricherSeries series, TvdbSeries OnlineSeries) { this.tvdbLibAccess.DebugEpisodeDump(OnlineSeries); do { GuideEnricherProgram guideProgram = series.PendingPrograms[0]; this.tvdbLibAccess.EnrichProgram(guideProgram, OnlineSeries); if (guideProgram.Matched) { series.AddAllToEnrichedPrograms(guideProgram); } else { series.AddAllToFailedPrograms(guideProgram); } } while (series.PendingPrograms.Count > 0); }
public void EnrichSeries(GuideEnricherSeries series) { series.TvDbSeriesID = this.tvdbLibAccess.getSeriesId(series.Title); if (series.TvDbSeriesID == 0) { series.isIgnored = true; } if (series.isIgnored) { series.IgnoredPrograms.AddRange(series.PendingPrograms); series.PendingPrograms.Clear(); } if (series.PendingPrograms.Count > 0) { log.DebugFormat("Beginning enrichment of episodes for series {0}", series.Title); var onlineSeries = this.tvdbLibAccess.GetTvdbSeries(series.TvDbSeriesID, false); this.EnrichProgramsInSeries(series, onlineSeries); if (series.FailedPrograms.Count > 0) { log.DebugFormat("The first run for the series {0} had unmatched episodes. Checking for online updates.", series.Title); List<string> currentTvDbEpisodes = new List<string>(); onlineSeries.Episodes.ForEach(x => currentTvDbEpisodes.Add(x.EpisodeName)); TvdbSeries updatedOnlineSeries = this.tvdbLibAccess.GetTvdbSeries(series.TvDbSeriesID, true); if (updatedOnlineSeries.Episodes.FindAll(x => !currentTvDbEpisodes.Contains(x.EpisodeName)).Count > 0) { log.DebugFormat("New episodes were found. Trying enrichment again."); series.TvDbInformationRefreshed(); this.EnrichProgramsInSeries(series, updatedOnlineSeries); } } this.enrichedPrograms.AddRange(series.SuccessfulPrograms); } }