2012-09-23 08:01:31 +02:00
|
|
|
|
using System.Linq;
|
|
|
|
|
using System;
|
|
|
|
|
using System.Diagnostics;
|
|
|
|
|
using System.IO;
|
|
|
|
|
using FizzWare.NBuilder;
|
|
|
|
|
using FluentAssertions;
|
|
|
|
|
using Moq;
|
|
|
|
|
using NUnit.Framework;
|
|
|
|
|
using NzbDrone.Common;
|
2013-02-24 07:48:52 +01:00
|
|
|
|
using NzbDrone.Core.Configuration;
|
2012-09-23 08:01:31 +02:00
|
|
|
|
using NzbDrone.Core.Jobs;
|
|
|
|
|
using NzbDrone.Core.Model;
|
|
|
|
|
using NzbDrone.Core.Providers;
|
|
|
|
|
using NzbDrone.Core.Test.Framework;
|
|
|
|
|
using NzbDrone.Test.Common;
|
|
|
|
|
|
|
|
|
|
namespace NzbDrone.Core.Test.JobTests
|
|
|
|
|
{
|
|
|
|
|
[TestFixture]
|
2013-02-17 06:44:06 +01:00
|
|
|
|
internal class PostDownloadScanJobFixture : CoreTest
|
2012-09-23 08:01:31 +02:00
|
|
|
|
{
|
|
|
|
|
[SetUp]
|
|
|
|
|
public void Setup()
|
|
|
|
|
{
|
|
|
|
|
Mocker.GetMock<DiskProvider>().Setup(s => s.FolderExists(It.IsAny<string>())).Returns(true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
|
public void should_use_options_Path_when_provided()
|
|
|
|
|
{
|
|
|
|
|
var path = @"C:\Test\Unsorted TV";
|
|
|
|
|
|
|
|
|
|
Mocker.GetMock<PostDownloadProvider>().Setup(s => s.ProcessDropFolder(path));
|
|
|
|
|
Mocker.Resolve<PostDownloadScanJob>().Start(MockNotification, new { Path = path });
|
|
|
|
|
|
|
|
|
|
Mocker.GetMock<PostDownloadProvider>().Verify(s => s.ProcessDropFolder(path), Times.Once());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
|
public void should_not_get_sabDropDir_when_path_is_supplied()
|
|
|
|
|
{
|
|
|
|
|
var path = @"C:\Test\Unsorted TV";
|
|
|
|
|
|
|
|
|
|
Mocker.GetMock<PostDownloadProvider>().Setup(s => s.ProcessDropFolder(path));
|
|
|
|
|
Mocker.Resolve<PostDownloadScanJob>().Start(MockNotification, new { Path = path });
|
|
|
|
|
|
2013-02-24 20:39:31 +01:00
|
|
|
|
Mocker.GetMock<IConfigService>().Verify(s => s.DownloadClientTvDirectory, Times.Never());
|
2012-09-23 08:01:31 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
|
public void should_get_sabDropDir_when_path_is_not_supplied()
|
|
|
|
|
{
|
|
|
|
|
var path = @"C:\Test\Unsorted TV";
|
|
|
|
|
|
2013-02-24 20:39:31 +01:00
|
|
|
|
Mocker.GetMock<IConfigService>().SetupGet(s => s.DownloadClientTvDirectory).Returns(path);
|
2012-09-23 08:01:31 +02:00
|
|
|
|
Mocker.Resolve<PostDownloadScanJob>().Start(MockNotification, null);
|
|
|
|
|
|
2013-02-24 20:39:31 +01:00
|
|
|
|
Mocker.GetMock<IConfigService>().Verify(s => s.DownloadClientTvDirectory, Times.Once());
|
2012-09-23 08:01:31 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Test]
|
|
|
|
|
public void should_use_sabDropDir_when_options_Path_is_not_provided()
|
|
|
|
|
{
|
|
|
|
|
var path = @"C:\Test\Unsorted TV";
|
|
|
|
|
|
2013-02-24 20:39:31 +01:00
|
|
|
|
Mocker.GetMock<IConfigService>().SetupGet(s => s.DownloadClientTvDirectory).Returns(path);
|
2012-09-23 08:01:31 +02:00
|
|
|
|
Mocker.Resolve<PostDownloadScanJob>().Start(MockNotification, null);
|
|
|
|
|
|
|
|
|
|
Mocker.GetMock<PostDownloadProvider>().Verify(s => s.ProcessDropFolder(path), Times.Once());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|