You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Lidarr/NzbDrone.Core.Test/UpdateTests/GetUpdateLogFixture.cs

58 lines
1.5 KiB

using System;
using System.IO;
using FluentAssertions;
using NUnit.Framework;
using NzbDrone.Common;
using NzbDrone.Core.Test.Framework;
using NzbDrone.Core.Update;
namespace NzbDrone.Core.Test.UpdateTests
{
public class GetUpdateLogFixture : CoreTest<UpdateService>
{
String _updateLogFolder;
[SetUp]
public void Setup()
{
WithTempAsAppPath();
_updateLogFolder = Mocker.GetMock<IEnvironmentProvider>().Object.GetUpdateLogFolder();
Mocker.GetMock<IDiskProvider>()
.Setup(c => c.GetFiles(_updateLogFolder, SearchOption.TopDirectoryOnly))
.Returns(new[]
{
"C:\\nzbdrone\\update\\2011.09.20-19-08.txt",
"C:\\nzbdrone\\update\\2011.10.20-20-08.txt",
"C:\\nzbdrone\\update\\2011.12.20-21-08.txt"
});
Mocker.GetMock<IDiskProvider>()
.Setup(c => c.FolderExists(_updateLogFolder))
.Returns(true);
}
[Test]
public void get_logs_should_return_empty_list_if_directory_doesnt_exist()
{
Mocker.GetMock<IDiskProvider>()
.Setup(c => c.FolderExists(_updateLogFolder))
.Returns(false);
Subject.GetUpdateLogFiles().Should().BeEmpty();
}
[Test]
public void get_logs_should_return_list_of_files_in_log_folder()
{
var logs = Subject.GetUpdateLogFiles();
logs.Should().HaveCount(3);
}
}
}