mirror of
https://github.com/Radarr/Radarr.git
synced 2024-09-17 15:02:34 +02:00
Fix: Paths with colons prevent Sonarr from communicating with Transmission
Issue #954
This commit is contained in:
parent
221f3ef08c
commit
8753c232c7
@ -19,6 +19,7 @@ public class TransmissionFixture : DownloadClientFixtureBase<Transmission>
|
|||||||
protected TransmissionTorrent _downloading;
|
protected TransmissionTorrent _downloading;
|
||||||
protected TransmissionTorrent _failed;
|
protected TransmissionTorrent _failed;
|
||||||
protected TransmissionTorrent _completed;
|
protected TransmissionTorrent _completed;
|
||||||
|
protected TransmissionTorrent _magnet;
|
||||||
protected Dictionary<string, object> _transmissionConfigItems;
|
protected Dictionary<string, object> _transmissionConfigItems;
|
||||||
|
|
||||||
[SetUp]
|
[SetUp]
|
||||||
@ -80,6 +81,17 @@ public void Setup()
|
|||||||
DownloadDir = "somepath"
|
DownloadDir = "somepath"
|
||||||
};
|
};
|
||||||
|
|
||||||
|
_magnet = new TransmissionTorrent
|
||||||
|
{
|
||||||
|
HashString = "HASH",
|
||||||
|
IsFinished = false,
|
||||||
|
Status = TransmissionTorrentStatus.Downloading,
|
||||||
|
Name = _title,
|
||||||
|
TotalSize = 0,
|
||||||
|
LeftUntilDone = 100,
|
||||||
|
DownloadDir = "somepath"
|
||||||
|
};
|
||||||
|
|
||||||
Mocker.GetMock<ITorrentFileInfoReader>()
|
Mocker.GetMock<ITorrentFileInfoReader>()
|
||||||
.Setup(s => s.GetHashFromTorrentFile(It.IsAny<byte[]>()))
|
.Setup(s => s.GetHashFromTorrentFile(It.IsAny<byte[]>()))
|
||||||
.Returns("CBC2F069FE8BB2F544EAE707D75BCD3DE9DCF951");
|
.Returns("CBC2F069FE8BB2F544EAE707D75BCD3DE9DCF951");
|
||||||
@ -171,6 +183,14 @@ protected void PrepareClientToReturnCompletedItem()
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected void PrepareClientToReturnMagnetItem()
|
||||||
|
{
|
||||||
|
GivenTorrents(new List<TransmissionTorrent>
|
||||||
|
{
|
||||||
|
_magnet
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
public void queued_item_should_have_required_properties()
|
public void queued_item_should_have_required_properties()
|
||||||
{
|
{
|
||||||
@ -203,6 +223,13 @@ public void completed_download_should_have_required_properties()
|
|||||||
VerifyCompleted(item);
|
VerifyCompleted(item);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public void magnet_download_should_not_return_the_item()
|
||||||
|
{
|
||||||
|
PrepareClientToReturnMagnetItem();
|
||||||
|
Subject.GetItems().Count().Should().Be(0);
|
||||||
|
}
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
public void Download_should_return_unique_id()
|
public void Download_should_return_unique_id()
|
||||||
{
|
{
|
||||||
|
@ -99,6 +99,10 @@ public override IEnumerable<DownloadClientItem> GetItems()
|
|||||||
|
|
||||||
foreach (var torrent in torrents)
|
foreach (var torrent in torrents)
|
||||||
{
|
{
|
||||||
|
// If totalsize == 0 the torrent is a magnet downloading metadata
|
||||||
|
if (torrent.TotalSize == 0)
|
||||||
|
continue;
|
||||||
|
|
||||||
var outputPath = _remotePathMappingService.RemapRemoteToLocal(Settings.Host, new OsPath(torrent.DownloadDir));
|
var outputPath = _remotePathMappingService.RemapRemoteToLocal(Settings.Host, new OsPath(torrent.DownloadDir));
|
||||||
|
|
||||||
if (Settings.TvCategory.IsNotNullOrWhiteSpace())
|
if (Settings.TvCategory.IsNotNullOrWhiteSpace())
|
||||||
|
Loading…
Reference in New Issue
Block a user