public void Grouped_NotGrouped(string one, string two, string three) { var mediaItems = new List <MediaItem> { NamedEpisode(one, 1, 1, 1), NamedEpisode(two, 1, 1, 2), NamedEpisode(three, 1, 1, 3) }; List <GroupedMediaItem> result = MultiPartEpisodeGrouper.GroupMediaItems(mediaItems, false); result.Count.Should().Be(2); ShouldHaveTwoItems(result, mediaItems[0], mediaItems[1]); ShouldHaveOneItem(result, mediaItems[2]); }
public void Mixed_Shows_Chronologically(string one, string two, string three, string four) { var mediaItems = new List <MediaItem> { NamedEpisode(one, 1, 1, 1, new DateTime(2020, 1, 1)), NamedEpisode(two, 2, 1, 3, new DateTime(2020, 1, 2)), NamedEpisode(three, 1, 1, 2, new DateTime(2020, 1, 3)), NamedEpisode(four, 1, 1, 5, new DateTime(2020, 1, 4)) }; List <GroupedMediaItem> result = MultiPartEpisodeGrouper.GroupMediaItems(mediaItems, false); result.Count.Should().Be(3); ShouldHaveTwoItems(result, mediaItems[0], mediaItems[2]); ShouldHaveOneItem(result, mediaItems[1]); ShouldHaveOneItem(result, mediaItems[3]); }
public void Repeat_Part(string one, string two, string three, string four) { var mediaItems = new List <MediaItem> { NamedEpisode(one, 1, 1, 1), NamedEpisode(two, 1, 1, 3), NamedEpisode(three, 1, 1, 4), NamedEpisode(four, 1, 1, 5) }; List <GroupedMediaItem> result = MultiPartEpisodeGrouper.GroupMediaItems(mediaItems, false); result.Count.Should().Be(3); ShouldHaveOneItem(result, mediaItems[0]); ShouldHaveTwoItems(result, mediaItems[1], mediaItems[2]); ShouldHaveOneItem(result, mediaItems[3]); }