1
0
Fork 0
mirror of https://github.com/lidarr/Lidarr synced 2025-03-03 10:06:06 +00:00

Empty directors and writers won't blowup

This commit is contained in:
Mark McDowall 2012-07-14 20:43:14 -07:00
parent c0b81a8971
commit 2982e79065
2 changed files with 28 additions and 2 deletions

View file

@ -121,6 +121,16 @@ private void WithMultiEpisodeFile()
.Returns(episodes.ToList());
}
private void WithNoDirectors()
{
tvdbSeries.Episodes.ForEach(e => e.Directors = new List<string>());
}
private void WithNoWriters()
{
tvdbSeries.Episodes.ForEach(e => e.Writer = new List<string>());
}
[Test]
public void should_not_blowup()
{
@ -151,5 +161,21 @@ public void should_download_thumbnail_when_thumbnail_path_is_not_null()
Mocker.Resolve<Xbmc>().CreateForEpisodeFile(episodeFile, tvdbSeries);
Mocker.GetMock<BannerProvider>().Verify(v => v.Download(tvdbSeries.Episodes.First().BannerPath, episodeFile.Path.Replace("avi", "tbn")), Times.Once());
}
[Test]
public void should_not_blowup_when_director_is_not_found()
{
WithSingleEpisodeFile();
WithNoDirectors();
Mocker.Resolve<Xbmc>().CreateForEpisodeFile(episodeFile, tvdbSeries);
}
[Test]
public void should_not_blowup_when_writer_is_not_found()
{
WithSingleEpisodeFile();
WithNoWriters();
Mocker.Resolve<Xbmc>().CreateForEpisodeFile(episodeFile, tvdbSeries);
}
}
}

View file

@ -155,8 +155,8 @@ public override void CreateForEpisodeFile(EpisodeFile episodeFile, TvdbSeries tv
details.Add(new XElement("displayepisode"));
details.Add(new XElement("thumb", "http://www.thetvdb.com/banners/" + tvdbEpisode.BannerPath));
details.Add(new XElement("watched", "false"));
details.Add(new XElement("credits", tvdbEpisode.Writer.First()));
details.Add(new XElement("director", tvdbEpisode.Directors.First()));
details.Add(new XElement("credits", tvdbEpisode.Writer.FirstOrDefault()));
details.Add(new XElement("director", tvdbEpisode.Directors.FirstOrDefault()));
details.Add(new XElement("rating", tvDbSeries.Rating));
foreach(var actor in tvdbEpisode.GuestStars)