@ -9,10 +9,10 @@ using NzbDrone.Common.Http;
using NzbDrone.Core.Download ;
using NzbDrone.Core.Download ;
using NzbDrone.Core.Download.Clients.DownloadStation ;
using NzbDrone.Core.Download.Clients.DownloadStation ;
using NzbDrone.Core.Download.Clients.DownloadStation.Proxies ;
using NzbDrone.Core.Download.Clients.DownloadStation.Proxies ;
using NzbDrone.Core.MediaFiles.TorrentInfo ;
using NzbDrone.Core.Parser.Model ;
using NzbDrone.Core.Parser.Model ;
using NzbDrone.Test.Common ;
using NzbDrone.Test.Common ;
using NzbDrone.Core.Organizer ;
using NzbDrone.Core.Organizer ;
using NzbDrone.Core.Download.Clients ;
namespace NzbDrone.Core.Test.Download.DownloadClientTests.DownloadStationTests
namespace NzbDrone.Core.Test.Download.DownloadClientTests.DownloadStationTests
{
{
@ -189,6 +189,18 @@ namespace NzbDrone.Core.Test.Download.DownloadClientTests.DownloadStationTests
. Returns < OsPath , DownloadStationSettings , string > ( ( path , setttings , serial ) = > _physicalPath ) ;
. Returns < OsPath , DownloadStationSettings , string > ( ( path , setttings , serial ) = > _physicalPath ) ;
}
}
protected void GivenSharedFolder ( string share )
{
Mocker . GetMock < ISharedFolderResolver > ( )
. Setup ( s = > s . RemapToFullPath ( It . IsAny < OsPath > ( ) , It . IsAny < DownloadStationSettings > ( ) , It . IsAny < string > ( ) ) )
. Throws ( new DownloadClientException ( "There is no matching shared folder" ) ) ;
Mocker . GetMock < ISharedFolderResolver > ( )
. Setup ( s = > s . RemapToFullPath ( It . Is < OsPath > ( x = > x . FullPath = = share ) , It . IsAny < DownloadStationSettings > ( ) , It . IsAny < string > ( ) ) )
. Returns < OsPath , DownloadStationSettings , string > ( ( path , setttings , serial ) = > _physicalPath ) ;
}
protected void GivenSerialNumber ( )
protected void GivenSerialNumber ( )
{
{
Mocker . GetMock < ISerialNumberProvider > ( )
Mocker . GetMock < ISerialNumberProvider > ( )
@ -374,6 +386,41 @@ namespace NzbDrone.Core.Test.Download.DownloadClientTests.DownloadStationTests
. Verify ( v = > v . AddTaskFromUrl ( It . IsAny < string > ( ) , null , _settings ) , Times . Never ( ) ) ;
. Verify ( v = > v . AddTaskFromUrl ( It . IsAny < string > ( ) , null , _settings ) , Times . Never ( ) ) ;
}
}
[Test]
public void GetStatus_should_map_outputpath_when_using_default ( )
{
GivenSerialNumber ( ) ;
GivenSharedFolder ( "/somepath" ) ;
var status = Subject . GetStatus ( ) ;
status . OutputRootFolders . First ( ) . Should ( ) . Be ( _physicalPath ) ;
}
[Test]
public void GetStatus_should_map_outputpath_when_using_destination ( )
{
GivenSerialNumber ( ) ;
GivenTvDirectory ( ) ;
GivenSharedFolder ( $"/{_musicDirectory}" ) ;
var status = Subject . GetStatus ( ) ;
status . OutputRootFolders . First ( ) . Should ( ) . Be ( _physicalPath ) ;
}
[Test]
public void GetStatus_should_map_outputpath_when_using_category ( )
{
GivenSerialNumber ( ) ;
GivenMusicCategory ( ) ;
GivenSharedFolder ( $"/somepath/{_category}" ) ;
var status = Subject . GetStatus ( ) ;
status . OutputRootFolders . First ( ) . Should ( ) . Be ( _physicalPath ) ;
}
[Test]
[Test]
public void GetItems_should_not_map_outputpath_for_queued_or_downloading_tasks ( )
public void GetItems_should_not_map_outputpath_for_queued_or_downloading_tasks ( )
{
{