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/src/NzbDrone.Core.Test/MetadataSource/MetadataRequestBuilderFixtu...

52 lines
1.4 KiB

using FluentAssertions;
using NUnit.Framework;
using NzbDrone.Common.Cloud;
using NzbDrone.Common.Http;
using NzbDrone.Core.Configuration;
using NzbDrone.Core.MetadataSource;
using NzbDrone.Core.Test.Framework;
namespace NzbDrone.Core.Test.MetadataSource
{
[TestFixture]
public class MetadataRequestBuilderFixture : CoreTest<MetadataRequestBuilder>
{
[SetUp]
public void Setup()
{
Mocker.GetMock<IConfigService>()
.Setup(s => s.MetadataSource)
.Returns("");
Mocker.GetMock<ILidarrCloudRequestBuilder>()
.Setup(s => s.Search)
.Returns(new HttpRequestBuilder("https://api.lidarr.audio/api/v0.4/{route}").CreateFactory());
}
private void WithCustomProvider()
{
Mocker.GetMock<IConfigService>()
.Setup(s => s.MetadataSource)
.Returns("http://api.lidarr.audio/api/testing/");
}
[TestCase]
public void should_use_user_definied_if_not_blank()
{
WithCustomProvider();
var details = Subject.GetRequestBuilder().Create();
details.BaseUrl.ToString().Should().Contain("testing");
}
[TestCase]
public void should_use_default_if_config_blank()
{
var details = Subject.GetRequestBuilder().Create();
details.BaseUrl.ToString().Should().Contain("v0.4");
}
}
}