mirror of https://github.com/Sonarr/Sonarr
Fixed: Removed Womble indexer.
This commit is contained in:
parent
060b9f6fd1
commit
2855090005
|
@ -1,78 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<rss version="2.0">
|
||||
|
||||
<channel>
|
||||
<title>Womble's NZB Index</title>
|
||||
<link>http://indexer.local/</link>
|
||||
<description>NZB Index</description>
|
||||
<webMaster>my.email@internet.me</webMaster>
|
||||
<ttl>15</ttl>
|
||||
|
||||
|
||||
<item>
|
||||
<title>One.Child.S01E01.720p.HDTV.x264-TLA</title>
|
||||
<link>http://indexer.local/nzb/bb4/One.Child.S01E01.720p.HDTV.x264-TLA.nzb</link>
|
||||
<description>
|
||||
One.Child.S01E01.720p.HDTV.x264-TLA
|
||||
(Size:956 Mb)
|
||||
</description>
|
||||
<category>tv-hd</category>
|
||||
<pubDate>2/17/2016 11:03:52 PM</pubDate>
|
||||
<guid isPermaLink="true">http://indexer.local/nzb/bb4/One.Child.S01E01.720p.HDTV.x264-TLA.nzb</guid>
|
||||
<enclosure url="http://indexer.local/nzb/bb4/One.Child.S01E01.720p.HDTV.x264-TLA.nzb" length="2048" type="text/xml" />
|
||||
</item>
|
||||
|
||||
<item>
|
||||
<title>Midsomer.Murders.S18E06.Harvest.Of.Souls.HDTV.x264-ORGANiC</title>
|
||||
<link>http://indexer.local/nzb/17c/Midsomer.Murders.S18E06.Harvest.Of.Souls.HDTV.x264-ORGANiC.nzb</link>
|
||||
<description>
|
||||
Midsomer.Murders.S18E06.Harvest.Of.Souls.HDTV.x264-ORGANiC
|
||||
(Size:730 Mb)
|
||||
</description>
|
||||
<category>tv-sd</category>
|
||||
<pubDate>2/17/2016 10:55:33 PM</pubDate>
|
||||
<guid isPermaLink="true">http://indexer.local/nzb/17c/Midsomer.Murders.S18E06.Harvest.Of.Souls.HDTV.x264-ORGANiC.nzb</guid>
|
||||
<enclosure url="http://indexer.local/nzb/17c/Midsomer.Murders.S18E06.Harvest.Of.Souls.HDTV.x264-ORGANiC.nzb" length="2048" type="text/xml" />
|
||||
</item>
|
||||
|
||||
<item>
|
||||
<title>Forget.and.Forgive.2014.HDTV.x264-SQUEAK</title>
|
||||
<link>http://indexer.local/nzb/f3f/Forget.and.Forgive.2014.HDTV.x264-SQUEAK.nzb</link>
|
||||
<description>
|
||||
Forget.and.Forgive.2014.HDTV.x264-SQUEAK
|
||||
(Size:719 Mb)
|
||||
</description>
|
||||
<category>tv-sd</category>
|
||||
<pubDate>2/17/2016 10:25:28 PM</pubDate>
|
||||
<guid isPermaLink="true">http://indexer.local/nzb/f3f/Forget.and.Forgive.2014.HDTV.x264-SQUEAK.nzb</guid>
|
||||
<enclosure url="http://indexer.local/nzb/f3f/Forget.and.Forgive.2014.HDTV.x264-SQUEAK.nzb" length="2048" type="text/xml" />
|
||||
</item>
|
||||
|
||||
<item>
|
||||
<title>National.Geographic.The.Lakeshore.Killers.HDTV.x264-SQUEAK</title>
|
||||
<link>http://indexer.local/nzb/828/National.Geographic.The.Lakeshore.Killers.HDTV.x264-SQUEAK.nzb</link>
|
||||
<description>
|
||||
National.Geographic.The.Lakeshore.Killers.HDTV.x264-SQUEAK
|
||||
(Size:436 Mb)
|
||||
</description>
|
||||
<category>tv-sd</category>
|
||||
<pubDate>2/17/2016 10:20:36 PM</pubDate>
|
||||
<guid isPermaLink="true">http://indexer.local/nzb/828/National.Geographic.The.Lakeshore.Killers.HDTV.x264-SQUEAK.nzb</guid>
|
||||
<enclosure url="http://indexer.local/nzb/828/National.Geographic.The.Lakeshore.Killers.HDTV.x264-SQUEAK.nzb" length="2048" type="text/xml" />
|
||||
</item>
|
||||
|
||||
<item>
|
||||
<title>Desert.Lands.of.The.Middle.East.E01.Turkeys.Harsh.Paradise.HDTV.x264-SQUEAK</title>
|
||||
<link>http://indexer.local/nzb/210/Desert.Lands.of.The.Middle.East.E01.Turkeys.Harsh.Paradise.HDTV.x264-SQUEAK.nzb</link>
|
||||
<description>
|
||||
Desert.Lands.of.The.Middle.East.E01.Turkeys.Harsh.Paradise.HDTV.x264-SQUEAK
|
||||
(Size:460 Mb)
|
||||
</description>
|
||||
<category>tv-sd</category>
|
||||
<pubDate>2/17/2016 10:18:29 PM</pubDate>
|
||||
<guid isPermaLink="true">http://indexer.local/nzb/210/Desert.Lands.of.The.Middle.East.E01.Turkeys.Harsh.Paradise.HDTV.x264-SQUEAK.nzb</guid>
|
||||
<enclosure url="http://indexer.local/nzb/210/Desert.Lands.of.The.Middle.East.E01.Turkeys.Harsh.Paradise.HDTV.x264-SQUEAK.nzb" length="2048" type="text/xml" />
|
||||
</item>
|
||||
|
||||
</channel>
|
||||
</rss>
|
|
@ -5,7 +5,6 @@ using NUnit.Framework;
|
|||
using NzbDrone.Core.Indexers;
|
||||
using NzbDrone.Core.Indexers.Newznab;
|
||||
using NzbDrone.Core.Indexers.Omgwtfnzbs;
|
||||
using NzbDrone.Core.Indexers.Wombles;
|
||||
using NzbDrone.Core.Lifecycle;
|
||||
using NzbDrone.Core.Test.Framework;
|
||||
|
||||
|
@ -22,7 +21,6 @@ namespace NzbDrone.Core.Test.IndexerTests
|
|||
|
||||
_indexers.Add(Mocker.Resolve<Newznab>());
|
||||
_indexers.Add(Mocker.Resolve<Omgwtfnzbs>());
|
||||
_indexers.Add(Mocker.Resolve<Wombles>());
|
||||
|
||||
Mocker.SetConstant<IEnumerable<IIndexer>>(_indexers);
|
||||
}
|
||||
|
@ -44,4 +42,4 @@ namespace NzbDrone.Core.Test.IndexerTests
|
|||
AllStoredModels.Should().NotContain(c => c.Id == existingIndexers.Id);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,7 +5,6 @@ using NUnit.Framework;
|
|||
using NzbDrone.Common.Extensions;
|
||||
using NzbDrone.Core.Indexers;
|
||||
using NzbDrone.Core.Indexers.Nyaa;
|
||||
using NzbDrone.Core.Indexers.Wombles;
|
||||
using NzbDrone.Core.IndexerSearch.Definitions;
|
||||
using NzbDrone.Core.Parser.Model;
|
||||
using NzbDrone.Core.Test.Framework;
|
||||
|
@ -39,22 +38,6 @@ namespace NzbDrone.Core.Test.IndexerTests.IntegrationTests
|
|||
};
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void wombles_fetch_recent()
|
||||
{
|
||||
var indexer = Mocker.Resolve<Wombles>();
|
||||
|
||||
indexer.Definition = new IndexerDefinition
|
||||
{
|
||||
Name = "MyIndexer",
|
||||
Settings = NullConfig.Instance
|
||||
};
|
||||
|
||||
var result = indexer.FetchRecent();
|
||||
|
||||
ValidateResult(result);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void nyaa_fetch_recent()
|
||||
{
|
||||
|
|
|
@ -1,59 +0,0 @@
|
|||
using System;
|
||||
using System.Linq;
|
||||
using FluentAssertions;
|
||||
using Moq;
|
||||
using NUnit.Framework;
|
||||
using NzbDrone.Common.Http;
|
||||
using NzbDrone.Core.Indexers;
|
||||
using NzbDrone.Core.Indexers.Wombles;
|
||||
using NzbDrone.Core.Test.Framework;
|
||||
using NzbDrone.Core.ThingiProvider;
|
||||
|
||||
namespace NzbDrone.Core.Test.IndexerTests.WomblesTests
|
||||
{
|
||||
|
||||
[TestFixture]
|
||||
public class TorrentRssIndexerFixture : CoreTest<Wombles>
|
||||
{
|
||||
[SetUp]
|
||||
public void Setup()
|
||||
{
|
||||
|
||||
Subject.Definition = new IndexerDefinition()
|
||||
{
|
||||
Name = "Wombles",
|
||||
Settings = new NullConfig(),
|
||||
};
|
||||
}
|
||||
|
||||
private void GivenRecentFeedResponse(string rssXmlFile)
|
||||
{
|
||||
var recentFeed = ReadAllText(@"Files/Indexers/" + rssXmlFile);
|
||||
|
||||
Mocker.GetMock<IHttpClient>()
|
||||
.Setup(o => o.Execute(It.IsAny<HttpRequest>()))
|
||||
.Returns<HttpRequest>(r => new HttpResponse(r, new HttpHeader(), recentFeed));
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void should_parse_recent_feed_from_wombles()
|
||||
{
|
||||
GivenRecentFeedResponse("Wombles/wombles.xml");
|
||||
|
||||
var releases = Subject.FetchRecent();
|
||||
|
||||
releases.Should().HaveCount(5);
|
||||
|
||||
var releaseInfo = releases.First();
|
||||
|
||||
releaseInfo.Title.Should().Be("One.Child.S01E01.720p.HDTV.x264-TLA");
|
||||
releaseInfo.DownloadProtocol.Should().Be(DownloadProtocol.Usenet);
|
||||
releaseInfo.DownloadUrl.Should().Be("http://indexer.local/nzb/bb4/One.Child.S01E01.720p.HDTV.x264-TLA.nzb");
|
||||
releaseInfo.InfoUrl.Should().BeNullOrEmpty();
|
||||
releaseInfo.CommentUrl.Should().BeNullOrEmpty();
|
||||
releaseInfo.Indexer.Should().Be(Subject.Definition.Name);
|
||||
releaseInfo.PublishDate.Should().Be(DateTime.Parse("2016-02-17 23:03:52 +0000").ToUniversalTime());
|
||||
releaseInfo.Size.Should().Be(956*1024*1024);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -268,7 +268,6 @@
|
|||
<Compile Include="IndexerTests\TorrentleechTests\TorrentleechFixture.cs" />
|
||||
<Compile Include="IndexerTests\TorrentRssIndexerTests\TorrentRssIndexerFixture.cs" />
|
||||
<Compile Include="IndexerTests\TorrentRssIndexerTests\TestTorrentRssIndexer.cs" />
|
||||
<Compile Include="IndexerTests\WomblesTests\WomblesFixture.cs" />
|
||||
<Compile Include="IndexerTests\XElementExtensionsFixture.cs" />
|
||||
<Compile Include="Instrumentation\DatabaseTargetFixture.cs" />
|
||||
<Compile Include="JobTests\JobRepositoryFixture.cs" />
|
||||
|
@ -536,10 +535,6 @@
|
|||
<Content Include="Files\Indexers\Torznab\torznab_tpb.xml">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="Files\Indexers\Wombles\wombles.xml">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
<SubType>Designer</SubType>
|
||||
</Content>
|
||||
<Content Include="Files\Indexers\BitMeTv\BitMeTv.xml">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Content>
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
using FluentMigrator;
|
||||
using NzbDrone.Core.Datastore.Migration.Framework;
|
||||
|
||||
namespace NzbDrone.Core.Datastore.Migration
|
||||
{
|
||||
[Migration(107)]
|
||||
public class remove_wombles : NzbDroneMigrationBase
|
||||
{
|
||||
protected override void MainDbUpgrade()
|
||||
{
|
||||
Execute.Sql("DELETE FROM Indexers WHERE Implementation = 'Wombles';");
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,32 +0,0 @@
|
|||
using NLog;
|
||||
using NzbDrone.Common.Http;
|
||||
using NzbDrone.Core.Configuration;
|
||||
using NzbDrone.Core.Parser;
|
||||
using NzbDrone.Core.ThingiProvider;
|
||||
|
||||
namespace NzbDrone.Core.Indexers.Wombles
|
||||
{
|
||||
public class Wombles : HttpIndexerBase<NullConfig>
|
||||
{
|
||||
public override string Name => "Womble's";
|
||||
|
||||
public override DownloadProtocol Protocol => DownloadProtocol.Usenet;
|
||||
public override bool SupportsSearch => false;
|
||||
|
||||
public override IParseIndexerResponse GetParser()
|
||||
{
|
||||
return new WomblesRssParser();
|
||||
}
|
||||
|
||||
public override IIndexerRequestGenerator GetRequestGenerator()
|
||||
{
|
||||
return new RssIndexerRequestGenerator("http://newshost.co.za/rss/?sec=TV&fr=false");
|
||||
}
|
||||
|
||||
public Wombles(IHttpClient httpClient, IIndexerStatusService indexerStatusService, IConfigService configService, IParsingService parsingService, Logger logger)
|
||||
: base(httpClient, indexerStatusService, configService, parsingService, logger)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,20 +0,0 @@
|
|||
using System;
|
||||
using System.Xml.Linq;
|
||||
|
||||
namespace NzbDrone.Core.Indexers.Wombles
|
||||
{
|
||||
public class WomblesRssParser : RssParser
|
||||
{
|
||||
public WomblesRssParser()
|
||||
{
|
||||
ParseSizeInDescription = true;
|
||||
}
|
||||
|
||||
protected override DateTime GetPublishDate(XElement item)
|
||||
{
|
||||
var dateString = item.TryGetValue("pubDate") + " +0000";
|
||||
|
||||
return XElementExtensions.ParseDate(dateString);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -249,6 +249,7 @@
|
|||
<Compile Include="Datastore\Migration\068_add_release_restrictions.cs" />
|
||||
<Compile Include="Datastore\Migration\069_quality_proper.cs" />
|
||||
<Compile Include="Datastore\Migration\070_delay_profile.cs" />
|
||||
<Compile Include="Datastore\Migration\107_remove_wombles.cs" />
|
||||
<Compile Include="Datastore\Migration\106_update_btn_url.cs" />
|
||||
<Compile Include="Datastore\Migration\096_disable_kickass.cs" />
|
||||
<Compile Include="Datastore\Migration\095_add_additional_episodes_index.cs" />
|
||||
|
@ -671,8 +672,6 @@
|
|||
<Compile Include="Indexers\Torznab\TorznabException.cs" />
|
||||
<Compile Include="Indexers\Torznab\TorznabRssParser.cs" />
|
||||
<Compile Include="Indexers\Torznab\TorznabSettings.cs" />
|
||||
<Compile Include="Indexers\Wombles\Wombles.cs" />
|
||||
<Compile Include="Indexers\Wombles\WomblesRssParser.cs" />
|
||||
<Compile Include="Indexers\XElementExtensions.cs" />
|
||||
<Compile Include="IndexerSearch\Definitions\AnimeEpisodeSearchCriteria.cs" />
|
||||
<Compile Include="IndexerSearch\Definitions\DailyEpisodeSearchCriteria.cs" />
|
||||
|
|
|
@ -9,6 +9,7 @@ namespace NzbDrone.Integration.Test.ApiTests
|
|||
public class IndexerFixture : IntegrationTest
|
||||
{
|
||||
[Test]
|
||||
[Ignore("Need mock Newznab to test")]
|
||||
public void should_have_built_in_indexer()
|
||||
{
|
||||
var indexers = Indexers.All();
|
||||
|
@ -18,4 +19,4 @@ namespace NzbDrone.Integration.Test.ApiTests
|
|||
indexers.Where(c => c.ConfigContract == typeof(NullConfig).Name).Should().OnlyContain(c => c.EnableRss);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,6 +7,7 @@ using System.Net;
|
|||
namespace NzbDrone.Integration.Test.ApiTests
|
||||
{
|
||||
[TestFixture]
|
||||
[Ignore("Need mock Newznab to test")]
|
||||
public class ReleaseFixture : IntegrationTest
|
||||
{
|
||||
[Test]
|
||||
|
@ -36,8 +37,8 @@ namespace NzbDrone.Integration.Test.ApiTests
|
|||
// But if it didn't accept it, it would return NotFound.
|
||||
// TODO: Maybe we should create a full mock Newznab server endpoint.
|
||||
//var result = Releases.Post(new ReleaseResource { Guid = releases.First().Guid });
|
||||
//result.Guid.Should().Be(releases.First().Guid);
|
||||
|
||||
//result.Guid.Should().Be(releases.First().Guid);
|
||||
|
||||
var result = Releases.Post(new ReleaseResource { Guid = releases.First().Guid }, HttpStatusCode.InternalServerError);
|
||||
}
|
||||
|
||||
|
@ -55,4 +56,4 @@ namespace NzbDrone.Integration.Test.ApiTests
|
|||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
using System.Collections.Generic;
|
||||
using NLog;
|
||||
using NzbDrone.Core.Indexers.Newznab;
|
||||
using NzbDrone.Test.Common;
|
||||
|
||||
namespace NzbDrone.Integration.Test
|
||||
|
@ -24,15 +25,15 @@ namespace NzbDrone.Integration.Test
|
|||
|
||||
protected override void InitializeTestTarget()
|
||||
{
|
||||
// Add Wombles
|
||||
Indexers.Post(new Api.Indexers.IndexerResource
|
||||
{
|
||||
EnableRss = true,
|
||||
ConfigContract = "NullConfig",
|
||||
Implementation = "Wombles",
|
||||
Name = "Wombles",
|
||||
EnableRss = false,
|
||||
EnableSearch = false,
|
||||
ConfigContract = nameof(NewznabSettings),
|
||||
Implementation = nameof(Newznab),
|
||||
Name = "NewznabTest",
|
||||
Protocol = Core.Indexers.DownloadProtocol.Usenet,
|
||||
Fields = new List<Api.ClientSchema.Field>()
|
||||
Fields = Api.ClientSchema.SchemaBuilder.ToSchema(new NewznabSettings())
|
||||
});
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue