mirror of
https://github.com/Sonarr/Sonarr.git
synced 2025-02-18 12:34:11 +02:00
Merge branch 'markus' into kay.one
This commit is contained in:
commit
c92e63b21a
@ -56,6 +56,46 @@ namespace NzbDrone.Core.Test.ProviderTests
|
|||||||
db.Single<NewznabDefinition>(result).Url.Should().Be(expectedUrl);
|
db.Single<NewznabDefinition>(result).Url.Should().Be(expectedUrl);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public void Save_should_clean_url_before_inserting_when_url_is_not_empty()
|
||||||
|
{
|
||||||
|
//Setup
|
||||||
|
var newznab = new NewznabDefinition { Name = "Newznab Provider", Enable = true, Url = "" };
|
||||||
|
var expectedUrl = "";
|
||||||
|
|
||||||
|
var mocker = new AutoMoqer();
|
||||||
|
var db = MockLib.GetEmptyDatabase();
|
||||||
|
mocker.SetConstant(db);
|
||||||
|
|
||||||
|
//Act
|
||||||
|
var result = mocker.Resolve<NewznabProvider>().Save(newznab);
|
||||||
|
|
||||||
|
//Assert
|
||||||
|
db.Single<NewznabDefinition>(result).Url.Should().Be(expectedUrl);
|
||||||
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public void Save_should_clean_url_before_updating_when_url_is_not_empty()
|
||||||
|
{
|
||||||
|
//Setup
|
||||||
|
var newznab = new NewznabDefinition { Name = "Newznab Provider", Enable = true, Url = "http://www.nzbdrone.com" };
|
||||||
|
var expectedUrl = "";
|
||||||
|
var newUrl = "";
|
||||||
|
|
||||||
|
var mocker = new AutoMoqer();
|
||||||
|
var db = MockLib.GetEmptyDatabase();
|
||||||
|
mocker.SetConstant(db);
|
||||||
|
|
||||||
|
newznab.Id = Convert.ToInt32(db.Insert(newznab));
|
||||||
|
newznab.Url = newUrl;
|
||||||
|
|
||||||
|
//Act
|
||||||
|
var result = mocker.Resolve<NewznabProvider>().Save(newznab);
|
||||||
|
|
||||||
|
//Assert
|
||||||
|
db.Single<NewznabDefinition>(result).Url.Should().Be(expectedUrl);
|
||||||
|
}
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
public void SaveAll_should_clean_urls_before_updating()
|
public void SaveAll_should_clean_urls_before_updating()
|
||||||
{
|
{
|
||||||
|
@ -101,6 +101,10 @@ namespace NzbDrone.Core.Test.ProviderTests
|
|||||||
{
|
{
|
||||||
for (int i = 1; i < season.Value.Count; i++)
|
for (int i = 1; i < season.Value.Count; i++)
|
||||||
{
|
{
|
||||||
|
//Skip specials, because someone decided 1,3,4,6,7,21 is how you count...
|
||||||
|
if (season.Key == 0)
|
||||||
|
continue;
|
||||||
|
|
||||||
season.Value.Should().Contain(c => c.EpisodeNumber == i, "Can't find Episode S{0:00}E{1:00}",
|
season.Value.Should().Contain(c => c.EpisodeNumber == i, "Can't find Episode S{0:00}E{1:00}",
|
||||||
season.Value[0].SeasonNumber, i);
|
season.Value[0].SeasonNumber, i);
|
||||||
}
|
}
|
||||||
|
@ -43,13 +43,13 @@ namespace NzbDrone.Core.Providers.Indexer
|
|||||||
{
|
{
|
||||||
if (searchModel.SearchType == SearchType.EpisodeSearch)
|
if (searchModel.SearchType == SearchType.EpisodeSearch)
|
||||||
{
|
{
|
||||||
searchUrls.Add(String.Format("{0}&q={1}&season{2}&ep{3}", url,
|
searchUrls.Add(String.Format("{0}&limit=100&q={1}&season{2}&ep{3}", url,
|
||||||
searchModel.SeriesTitle, searchModel.SeasonNumber, searchModel.EpisodeNumber));
|
searchModel.SeriesTitle, searchModel.SeasonNumber, searchModel.EpisodeNumber));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (searchModel.SearchType == SearchType.SeasonSearch)
|
if (searchModel.SearchType == SearchType.SeasonSearch)
|
||||||
{
|
{
|
||||||
searchUrls.Add(String.Format("{0}&q={1}&season{2}", url, searchModel.SeriesTitle, searchModel.SeasonNumber));
|
searchUrls.Add(String.Format("{0}&limit=100&q={1}&season{2}", url, searchModel.SeriesTitle, searchModel.SeasonNumber));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -37,8 +37,9 @@ namespace NzbDrone.Core.Providers
|
|||||||
|
|
||||||
public virtual int Save(NewznabDefinition definition)
|
public virtual int Save(NewznabDefinition definition)
|
||||||
{
|
{
|
||||||
//Cleanup the URL
|
//Cleanup the URL if it is not null or whitespace
|
||||||
definition.Url = (new Uri(definition.Url).ParentUriString());
|
if (!String.IsNullOrWhiteSpace(definition.Url))
|
||||||
|
definition.Url = (new Uri(definition.Url).ParentUriString());
|
||||||
|
|
||||||
if (definition.Id == 0)
|
if (definition.Id == 0)
|
||||||
{
|
{
|
||||||
|
@ -91,7 +91,7 @@ namespace NzbDrone.Web.Controllers
|
|||||||
NzbMatrixEnabled = _indexerProvider.GetSettings(typeof(NzbMatrix)).Enable,
|
NzbMatrixEnabled = _indexerProvider.GetSettings(typeof(NzbMatrix)).Enable,
|
||||||
NzbsRUsEnabled = _indexerProvider.GetSettings(typeof(NzbsRUs)).Enable,
|
NzbsRUsEnabled = _indexerProvider.GetSettings(typeof(NzbsRUs)).Enable,
|
||||||
NewzbinEnabled = _indexerProvider.GetSettings(typeof(Newzbin)).Enable,
|
NewzbinEnabled = _indexerProvider.GetSettings(typeof(Newzbin)).Enable,
|
||||||
NewznabEnabled = _indexerProvider.GetSettings(typeof(Newzbin)).Enable,
|
NewznabEnabled = _indexerProvider.GetSettings(typeof(Newznab)).Enable,
|
||||||
|
|
||||||
NewznabDefinitions = _newznabProvider.All(),
|
NewznabDefinitions = _newznabProvider.All(),
|
||||||
});
|
});
|
||||||
@ -299,7 +299,7 @@ namespace NzbDrone.Web.Controllers
|
|||||||
return new JsonResult { Data = "ok" };
|
return new JsonResult { Data = "ok" };
|
||||||
}
|
}
|
||||||
|
|
||||||
public ViewResult AddNewznabProvider()
|
public PartialViewResult AddNewznabProvider()
|
||||||
{
|
{
|
||||||
var newznab = new NewznabDefinition
|
var newznab = new NewznabDefinition
|
||||||
{
|
{
|
||||||
@ -312,7 +312,7 @@ namespace NzbDrone.Web.Controllers
|
|||||||
|
|
||||||
ViewData["ProviderId"] = id;
|
ViewData["ProviderId"] = id;
|
||||||
|
|
||||||
return View("NewznabProvider", newznab);
|
return PartialView("NewznabProvider", newznab);
|
||||||
}
|
}
|
||||||
|
|
||||||
public ActionResult GetNewznabProviderView(NewznabDefinition provider)
|
public ActionResult GetNewznabProviderView(NewznabDefinition provider)
|
||||||
@ -387,6 +387,10 @@ namespace NzbDrone.Web.Controllers
|
|||||||
newzbinSettings.Enable = data.NewzbinEnabled;
|
newzbinSettings.Enable = data.NewzbinEnabled;
|
||||||
_indexerProvider.SaveSettings(newzbinSettings);
|
_indexerProvider.SaveSettings(newzbinSettings);
|
||||||
|
|
||||||
|
var newznabSettings = _indexerProvider.GetSettings(typeof(Newznab));
|
||||||
|
newznabSettings.Enable = data.NewznabEnabled;
|
||||||
|
_indexerProvider.SaveSettings(newznabSettings);
|
||||||
|
|
||||||
_configProvider.NzbsOrgUId = data.NzbsOrgUId;
|
_configProvider.NzbsOrgUId = data.NzbsOrgUId;
|
||||||
_configProvider.NzbsOrgHash = data.NzbsOrgHash;
|
_configProvider.NzbsOrgHash = data.NzbsOrgHash;
|
||||||
|
|
||||||
|
@ -974,4 +974,4 @@ xcopy /s /y "$(SolutionDir)packages\SqlServerCompact.4.0.8482.1\NativeBinaries\x
|
|||||||
if not exist "$(TargetDir)amd64" md "$(TargetDir)amd64"
|
if not exist "$(TargetDir)amd64" md "$(TargetDir)amd64"
|
||||||
xcopy /s /y "$(SolutionDir)packages\SqlServerCompact.4.0.8482.1\NativeBinaries\amd64\*.*" "$(TargetDir)amd64"</PostBuildEvent>
|
xcopy /s /y "$(SolutionDir)packages\SqlServerCompact.4.0.8482.1\NativeBinaries\amd64\*.*" "$(TargetDir)amd64"</PostBuildEvent>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
</Project>
|
</Project>
|
Loading…
x
Reference in New Issue
Block a user