mirror of
https://github.com/Sonarr/Sonarr
synced 2024-12-26 09:47:39 +00:00
Series with Episode count now ignores shows that haven't aired (includes ones that air today).
This commit is contained in:
parent
348ff5a386
commit
7ec499acab
3 changed files with 14 additions and 7 deletions
|
@ -214,7 +214,15 @@ namespace NzbDrone.Core.Test
|
||||||
|
|
||||||
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
|
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
|
||||||
var fakeSeries = Builder<Series>.CreateNew().With(e => e.QualityProfileId = fakeQuality.QualityProfileId).Build();
|
var fakeSeries = Builder<Series>.CreateNew().With(e => e.QualityProfileId = fakeQuality.QualityProfileId).Build();
|
||||||
var fakeEpisodes = Builder<Episode>.CreateListOfSize(10).WhereAll().Have(e => e.SeriesId = fakeSeries.SeriesId).Have(e => e.Ignored = false).WhereRandom(5).Have(e => e.EpisodeFileId = 0).Build();
|
var fakeEpisodes = Builder<Episode>.CreateListOfSize(10)
|
||||||
|
.WhereAll().Have(e => e.SeriesId = fakeSeries.SeriesId)
|
||||||
|
.Have(e => e.Ignored = false)
|
||||||
|
.Have(e => e.AirDate = DateTime.Today)
|
||||||
|
.WhereTheFirst(5)
|
||||||
|
.Have(e => e.EpisodeFileId = 0)
|
||||||
|
.WhereTheLast(2)
|
||||||
|
.Have(e => e.AirDate = DateTime.Today.AddDays(1))
|
||||||
|
.Build();
|
||||||
|
|
||||||
db.Insert(fakeSeries);
|
db.Insert(fakeSeries);
|
||||||
db.Insert(fakeQuality);
|
db.Insert(fakeQuality);
|
||||||
|
@ -226,8 +234,8 @@ namespace NzbDrone.Core.Test
|
||||||
|
|
||||||
//Assert
|
//Assert
|
||||||
series.Should().HaveCount(1);
|
series.Should().HaveCount(1);
|
||||||
Assert.AreEqual(10, series[0].EpisodeCount);
|
Assert.AreEqual(8, series[0].EpisodeCount);
|
||||||
Assert.AreEqual(5, series[0].EpisodeFileCount);
|
Assert.AreEqual(3, series[0].EpisodeFileCount);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
|
|
|
@ -196,7 +196,6 @@
|
||||||
<Compile Include="Model\Xbmc\ErrorResult.cs" />
|
<Compile Include="Model\Xbmc\ErrorResult.cs" />
|
||||||
<Compile Include="Model\Xbmc\IconType.cs" />
|
<Compile Include="Model\Xbmc\IconType.cs" />
|
||||||
<Compile Include="Providers\Core\UdpProvider.cs" />
|
<Compile Include="Providers\Core\UdpProvider.cs" />
|
||||||
<None Include="Providers\Xbmc\EventClient_old.cs" />
|
|
||||||
<Compile Include="Providers\Xbmc\ResourceManager.cs" />
|
<Compile Include="Providers\Xbmc\ResourceManager.cs" />
|
||||||
<Compile Include="Model\Xbmc\TvShowResult.cs" />
|
<Compile Include="Model\Xbmc\TvShowResult.cs" />
|
||||||
<Compile Include="Model\Xbmc\Params.cs" />
|
<Compile Include="Model\Xbmc\Params.cs" />
|
||||||
|
|
|
@ -47,8 +47,8 @@ namespace NzbDrone.Core.Providers
|
||||||
var series = _database
|
var series = _database
|
||||||
.Fetch<Series, QualityProfile>(@"SELECT Series.SeriesId, Series.Title, Series.CleanTitle, Series.Status, Series.Overview, Series.AirsDayOfWeek,Series.AirTimes,
|
.Fetch<Series, QualityProfile>(@"SELECT Series.SeriesId, Series.Title, Series.CleanTitle, Series.Status, Series.Overview, Series.AirsDayOfWeek,Series.AirTimes,
|
||||||
Series.Language, Series.Path, Series.Monitored, Series.QualityProfileId, Series.SeasonFolder,
|
Series.Language, Series.Path, Series.Monitored, Series.QualityProfileId, Series.SeasonFolder,
|
||||||
SUM(CASE WHEN Ignored = 0 THEN 1 ELSE 0 END) AS EpisodeCount,
|
SUM(CASE WHEN Ignored = 0 AND Airdate <= @0 THEN 1 ELSE 0 END) AS EpisodeCount,
|
||||||
SUM(CASE WHEN Episodes.Ignored = 0 AND Episodes.EpisodeFileId > 0 THEN 1 ELSE 0 END) as EpisodeFileCount,
|
SUM(CASE WHEN Episodes.Ignored = 0 AND Episodes.EpisodeFileId > 0 AND Episodes.AirDate <= @0 THEN 1 ELSE 0 END) as EpisodeFileCount,
|
||||||
MAX(Episodes.SeasonNumber) as SeasonCount,
|
MAX(Episodes.SeasonNumber) as SeasonCount,
|
||||||
QualityProfiles.QualityProfileId, QualityProfiles.Name, QualityProfiles.Cutoff, QualityProfiles.SonicAllowed
|
QualityProfiles.QualityProfileId, QualityProfiles.Name, QualityProfiles.Cutoff, QualityProfiles.SonicAllowed
|
||||||
FROM Series
|
FROM Series
|
||||||
|
@ -56,7 +56,7 @@ namespace NzbDrone.Core.Providers
|
||||||
LEFT JOIN Episodes ON Series.SeriesId = Episodes.SeriesId
|
LEFT JOIN Episodes ON Series.SeriesId = Episodes.SeriesId
|
||||||
GROUP BY Series.SeriesId, Series.Title, Series.CleanTitle, Series.Status, Series.Overview, Series.AirsDayOfWeek,Series.AirTimes,
|
GROUP BY Series.SeriesId, Series.Title, Series.CleanTitle, Series.Status, Series.Overview, Series.AirsDayOfWeek,Series.AirTimes,
|
||||||
Series.Language, Series.Path, Series.Monitored, Series.QualityProfileId, Series.SeasonFolder,
|
Series.Language, Series.Path, Series.Monitored, Series.QualityProfileId, Series.SeasonFolder,
|
||||||
QualityProfiles.QualityProfileId, QualityProfiles.Name, QualityProfiles.Cutoff, QualityProfiles.SonicAllowed");
|
QualityProfiles.QualityProfileId, QualityProfiles.Name, QualityProfiles.Cutoff, QualityProfiles.SonicAllowed", DateTime.Today);
|
||||||
|
|
||||||
return series;
|
return series;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue