refactor: Reorganize code and fix unit tests

pull/201/head
Robert Dailey 1 year ago
parent 6a16bd6045
commit 76040df597

@ -0,0 +1,13 @@
using Autofac;
using Recyclarr.TrashLib.TestLibrary;
namespace Recyclarr.Cli.TestLibrary;
[FixtureLifeCycle(LifeCycle.InstancePerTestCase)]
public abstract class CliIntegrationFixture : TrashLibIntegrationFixture
{
protected override void RegisterTypes(ContainerBuilder builder)
{
CompositionRoot.Setup(builder);
}
}

@ -1,7 +1,7 @@
using Recyclarr.Cli.Console.Settings;
using Recyclarr.TrashLib.Config;
using Recyclarr.TrashLib.Processors;
namespace Recyclarr.TrashLib.TestLibrary;
namespace Recyclarr.Cli.TestLibrary;
public static class MockSyncSettings
{

@ -1,7 +1,7 @@
using Recyclarr.Cli.Pipelines.QualityProfile.PipelinePhases;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.QualityProfile.PipelinePhases;
namespace Recyclarr.TrashLib.TestLibrary;
namespace Recyclarr.Cli.TestLibrary;
public static class NewQp
{

@ -3,5 +3,6 @@
<ProjectReference Include="..\Recyclarr.Common.TestLibrary\Recyclarr.Common.TestLibrary.csproj" />
<ProjectReference Include="..\Recyclarr.Cli\Recyclarr.Cli.csproj" />
<ProjectReference Include="..\Recyclarr.TestLibrary\Recyclarr.TestLibrary.csproj" />
<ProjectReference Include="..\Recyclarr.TrashLib.TestLibrary\Recyclarr.TrashLib.TestLibrary.csproj" />
</ItemGroup>
</Project>

@ -5,7 +5,7 @@ namespace Recyclarr.Cli.Tests;
[TestFixture]
[Parallelizable(ParallelScope.All)]
public class AutoMapperConfigurationTest : IntegrationFixture
public class AutoMapperConfigurationTest : CliIntegrationFixture
{
[Test]
public void Automapper_config_is_valid()

@ -1,13 +1,13 @@
using System.IO.Abstractions;
using Recyclarr.Cli.Console.Setup;
using Recyclarr.Cli.TestLibrary;
using Recyclarr.TrashLib.Config.Settings;
using Recyclarr.TrashLib.Settings;
namespace Recyclarr.Cli.Tests;
[TestFixture]
[Parallelizable(ParallelScope.All)]
public class BaseCommandSetupIntegrationTest : IntegrationFixture
public class BaseCommandSetupIntegrationTest : CliIntegrationFixture
{
[Test]
public void Base_command_startup_tasks_are_registered()

@ -14,7 +14,7 @@ public class CompositionRootTest
// Warning CA1812 : CompositionRootTest.ConcreteTypeEnumerator is an internal class that is apparently never
// instantiated.
[SuppressMessage("Performance", "CA1812", Justification = "Created via reflection by TestCaseSource attribute")]
private sealed class ConcreteTypeEnumerator : IntegrationFixture, IEnumerable
private sealed class ConcreteTypeEnumerator : CliIntegrationFixture, IEnumerable
{
public IEnumerator GetEnumerator()
{

@ -7,7 +7,7 @@ namespace Recyclarr.Cli.Tests.Migration;
[TestFixture]
[Parallelizable(ParallelScope.All)]
public class MigrationExecutorTest : IntegrationFixture
public class MigrationExecutorTest : CliIntegrationFixture
{
[Test]
public void Migration_steps_are_in_expected_order()

@ -1,14 +1,15 @@
using Flurl.Http.Testing;
using Recyclarr.Cli.Pipelines.CustomFormat.Api;
using Recyclarr.Cli.TestLibrary;
using Recyclarr.Common;
using Recyclarr.TestLibrary.AutoFixture;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Api;
namespace Recyclarr.TrashLib.Tests.Pipelines.CustomFormat.Api;
namespace Recyclarr.Cli.Tests.Pipelines.CustomFormat.Api;
[TestFixture]
[Parallelizable(ParallelScope.All)]
public class CustomFormatServiceTest : IntegrationFixture
public class CustomFormatServiceTest : CliIntegrationFixture
{
[Test, AutoMockData]
public async Task Get_can_parse_json(IServiceConfiguration config)

@ -1,8 +1,9 @@
using System.IO.Abstractions;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
using Recyclarr.Cli.Pipelines.CustomFormat.Guide;
using Recyclarr.TestLibrary.AutoFixture;
using Recyclarr.TrashLib.Startup;
namespace Recyclarr.TrashLib.Tests.CustomFormat.Guide;
namespace Recyclarr.Cli.Tests.Pipelines.CustomFormat.Guide;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,12 +1,13 @@
using Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
using Recyclarr.Cli.Pipelines.CustomFormat.Guide;
using Recyclarr.TestLibrary.AutoFixture;
using Recyclarr.TrashLib.TestLibrary;
using Spectre.Console.Testing;
namespace Recyclarr.TrashLib.Tests.CustomFormat;
namespace Recyclarr.Cli.Tests.Pipelines.CustomFormat.Guide;
[TestFixture]
[Parallelizable(ParallelScope.All)]
public class GuideDataListerTest
public class CustomFormatDataListerTest
{
[Test, AutoMockData]
public void Custom_formats_appear_in_console_output(

@ -1,15 +1,15 @@
using System.IO.Abstractions;
using System.IO.Abstractions.Extensions;
using Newtonsoft.Json.Linq;
using Recyclarr.Cli.Pipelines.CustomFormat.Guide;
using Recyclarr.Cli.TestLibrary;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
using Recyclarr.TrashLib.TestLibrary;
namespace Recyclarr.TrashLib.Tests.CustomFormat.Guide;
namespace Recyclarr.Cli.Tests.Pipelines.CustomFormat.Guide;
[TestFixture]
[Parallelizable(ParallelScope.All)]
public class CustomFormatLoaderTest : IntegrationFixture
public class CustomFormatLoaderTest : CliIntegrationFixture
{
[Test]
public void Get_custom_format_json_works()

@ -1,10 +1,11 @@
using Newtonsoft.Json.Linq;
using Recyclarr.Cli.Pipelines.CustomFormat.Guide;
using Recyclarr.Common.Extensions;
using Recyclarr.TestLibrary.AutoFixture;
using Recyclarr.TrashLib.Json;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Models;
namespace Recyclarr.TrashLib.Tests.Pipelines.CustomFormat.Guide;
namespace Recyclarr.Cli.Tests.Pipelines.CustomFormat.Guide;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,6 +1,6 @@
using Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Models;
namespace Recyclarr.TrashLib.Tests.Pipelines.CustomFormat.Models;
namespace Recyclarr.Cli.Tests.Pipelines.CustomFormat.Models;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,8 +1,8 @@
using Flurl.Http.Configuration;
using Recyclarr.TrashLib.Json;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Models;
namespace Recyclarr.TrashLib.Tests.Pipelines.CustomFormat.Models;
namespace Recyclarr.Cli.Tests.Pipelines.CustomFormat.Models;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,9 +1,10 @@
using Recyclarr.Cli.Pipelines.CustomFormat.Guide;
using Recyclarr.Cli.Pipelines.CustomFormat.PipelinePhases;
using Recyclarr.TestLibrary.AutoFixture;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
using Recyclarr.TrashLib.Pipelines.CustomFormat.PipelinePhases;
using Recyclarr.TrashLib.TestLibrary;
namespace Recyclarr.TrashLib.Tests.Pipelines.CustomFormat.PipelinePhases;
namespace Recyclarr.Cli.Tests.Pipelines.CustomFormat.PipelinePhases;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,15 +1,17 @@
using Recyclarr.Cli.Pipelines.CustomFormat;
using Recyclarr.Cli.Pipelines.CustomFormat.Models;
using Recyclarr.Cli.Pipelines.CustomFormat.PipelinePhases;
using Recyclarr.Cli.TestLibrary;
using Recyclarr.TrashLib.Cache;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.CustomFormat;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Pipelines.CustomFormat.PipelinePhases;
using Recyclarr.TrashLib.Models;
using Recyclarr.TrashLib.TestLibrary;
namespace Recyclarr.TrashLib.Tests.Pipelines.CustomFormat.PipelinePhases;
namespace Recyclarr.Cli.Tests.Pipelines.CustomFormat.PipelinePhases;
[TestFixture]
[Parallelizable(ParallelScope.All)]
public class CustomFormatTransactionPhaseTest : IntegrationFixture
public class CustomFormatTransactionPhaseTest : CliIntegrationFixture
{
[Test]
public void Add_new_cf()
@ -69,9 +71,8 @@ public class CustomFormatTransactionPhaseTest : IntegrationFixture
{
UpdatedCustomFormats =
{
new CustomFormatData
NewCf.Data("one", "cf1") with
{
Name = "one",
IncludeCustomFormatWhenRenaming = true
}
}
@ -115,10 +116,8 @@ public class CustomFormatTransactionPhaseTest : IntegrationFixture
{
UpdatedCustomFormats =
{
new CustomFormatData
NewCf.Data("different1", "cf1", 2) with
{
Name = "different1",
Id = 2,
IncludeCustomFormatWhenRenaming = true
}
}
@ -159,10 +158,8 @@ public class CustomFormatTransactionPhaseTest : IntegrationFixture
{
UpdatedCustomFormats =
{
new CustomFormatData
NewCf.Data("different1", "cf1", 2) with
{
Name = "different1",
Id = 2,
IncludeCustomFormatWhenRenaming = true
}
}

@ -1,9 +1,11 @@
using Recyclarr.Cli.Pipelines.CustomFormat.Models;
using Recyclarr.Cli.Pipelines.QualityProfile.PipelinePhases;
using Recyclarr.Cli.TestLibrary;
using Recyclarr.TestLibrary.AutoFixture;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Cache;
using Recyclarr.TrashLib.Pipelines.QualityProfile.PipelinePhases;
using Recyclarr.TrashLib.TestLibrary;
namespace Recyclarr.TrashLib.Tests.Pipelines.QualityProfile.PipelinePhases;
namespace Recyclarr.Cli.Tests.Pipelines.QualityProfile.PipelinePhases;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,9 +1,10 @@
using Recyclarr.TrashLib.Pipelines.QualityProfile;
using Recyclarr.TrashLib.Pipelines.QualityProfile.Api;
using Recyclarr.TrashLib.Pipelines.QualityProfile.PipelinePhases;
using Recyclarr.TrashLib.TestLibrary;
using Recyclarr.Cli.Pipelines.QualityProfile;
using Recyclarr.Cli.Pipelines.QualityProfile.Api;
using Recyclarr.Cli.Pipelines.QualityProfile.PipelinePhases;
using Recyclarr.Cli.TestLibrary;
using Recyclarr.TestLibrary.AutoFixture;
namespace Recyclarr.TrashLib.Tests.Pipelines.QualityProfile.PipelinePhases;
namespace Recyclarr.Cli.Tests.Pipelines.QualityProfile.PipelinePhases;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,15 +1,15 @@
using System.IO.Abstractions;
using Recyclarr.Cli.Pipelines.QualitySize.Guide;
using Recyclarr.Cli.TestLibrary;
using Recyclarr.Common.Extensions;
using Recyclarr.Common.TestLibrary;
using Recyclarr.TrashLib.Config;
using Recyclarr.TrashLib.Pipelines.QualitySize.Guide;
namespace Recyclarr.TrashLib.Tests.Pipelines.QualitySize.Guide;
namespace Recyclarr.Cli.Tests.Pipelines.QualitySize.Guide;
[TestFixture]
[Parallelizable(ParallelScope.All)]
public class QualityGuideServiceTest : IntegrationFixture
public class QualityGuideServiceTest : CliIntegrationFixture
{
[TestCase(SupportedServices.Sonarr, "sonarr")]
[TestCase(SupportedServices.Radarr, "radarr")]

@ -1,10 +1,10 @@
using Recyclarr.TrashLib.Pipelines.QualitySize.Guide;
using Recyclarr.Cli.Pipelines.QualitySize.Guide;
namespace Recyclarr.TrashLib.Tests.Sonarr.QualityDefinition;
namespace Recyclarr.Cli.Tests.Pipelines.QualitySize.Guide;
[TestFixture]
[Parallelizable(ParallelScope.All)]
public class QualitySizeDataTest
public class QualityItemTest
{
private static readonly object[] MaxTestValues =
{

@ -1,16 +1,16 @@
using System.IO.Abstractions;
using System.IO.Abstractions.Extensions;
using Recyclarr.Cli.Pipelines.QualitySize;
using Recyclarr.Cli.Pipelines.QualitySize.Guide;
using Recyclarr.Cli.TestLibrary;
using Recyclarr.Common.Extensions;
using Recyclarr.Common.TestLibrary;
using Recyclarr.TrashLib.Pipelines.QualitySize;
using Recyclarr.TrashLib.Pipelines.QualitySize.Guide;
namespace Recyclarr.TrashLib.Tests.Pipelines.QualitySize.Guide;
namespace Recyclarr.Cli.Tests.Pipelines.QualitySize.Guide;
[TestFixture]
[Parallelizable(ParallelScope.All)]
public class QualitySizeGuideParserTest : IntegrationFixture
public class QualitySizeGuideParserTest : CliIntegrationFixture
{
[Test]
public void Get_valid_data()

@ -1,10 +1,11 @@
using NSubstitute.ReturnsExtensions;
using Recyclarr.Cli.Pipelines.QualitySize;
using Recyclarr.Cli.Pipelines.QualitySize.Guide;
using Recyclarr.Cli.Pipelines.QualitySize.PipelinePhases;
using Recyclarr.TestLibrary.AutoFixture;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.QualitySize;
using Recyclarr.TrashLib.Pipelines.QualitySize.Guide;
using Recyclarr.TrashLib.Pipelines.QualitySize.PipelinePhases;
namespace Recyclarr.TrashLib.Tests.Pipelines.QualitySize.PipelinePhases;
namespace Recyclarr.Cli.Tests.Pipelines.QualitySize.PipelinePhases;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,8 +1,9 @@
using Recyclarr.TrashLib.Pipelines.QualitySize;
using Recyclarr.TrashLib.Pipelines.QualitySize.Api;
using Recyclarr.TrashLib.Pipelines.QualitySize.PipelinePhases;
using Recyclarr.Cli.Pipelines.QualitySize;
using Recyclarr.Cli.Pipelines.QualitySize.Api;
using Recyclarr.Cli.Pipelines.QualitySize.PipelinePhases;
using Recyclarr.TestLibrary.AutoFixture;
namespace Recyclarr.TrashLib.Tests.Pipelines.QualitySize.PipelinePhases;
namespace Recyclarr.Cli.Tests.Pipelines.QualitySize.PipelinePhases;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,10 +1,10 @@
using Recyclarr.TrashLib.Pipelines.QualitySize;
using Recyclarr.Cli.Pipelines.QualitySize;
namespace Recyclarr.TrashLib.Tests.QualityDefinition;
namespace Recyclarr.Cli.Tests.Pipelines.QualitySize;
[TestFixture]
[Parallelizable(ParallelScope.All)]
public class QualitySizeDataTest
public class QualitySizeItemTest
{
private static readonly object[] PreferredTestValues =
{

@ -2,18 +2,18 @@ using Autofac;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using Newtonsoft.Json.Serialization;
using Recyclarr.Cli.Pipelines.ReleaseProfile.Api;
using Recyclarr.Cli.Pipelines.ReleaseProfile.Api.Objects;
using Recyclarr.Cli.TestLibrary;
using Recyclarr.TestLibrary.Autofac;
using Recyclarr.TrashLib.Compatibility.Sonarr;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.ReleaseProfile.Api;
using Recyclarr.TrashLib.Pipelines.ReleaseProfile.Api.Objects;
namespace Recyclarr.TrashLib.Tests.Sonarr;
namespace Recyclarr.Cli.Tests.Pipelines.ReleaseProfile.Api;
[TestFixture]
[Parallelizable(ParallelScope.All)]
public class SonarrCompatibilityTest : IntegrationFixture
public class SonarrReleaseProfileCompatibilityHandlerTest : CliIntegrationFixture
{
private static JObject SerializeJson<T>(T obj)
{
@ -25,8 +25,9 @@ public class SonarrCompatibilityTest : IntegrationFixture
return JObject.Parse(JsonConvert.SerializeObject(obj, jsonSettings));
}
protected override void RegisterExtraTypes(ContainerBuilder builder)
protected override void RegisterTypes(ContainerBuilder builder)
{
base.RegisterTypes(builder);
builder.RegisterMockFor<ISonarrCapabilityChecker>();
}

@ -1,8 +1,9 @@
using Recyclarr.Cli.Pipelines.ReleaseProfile;
using Recyclarr.Cli.Pipelines.ReleaseProfile.Filters;
using Recyclarr.TestLibrary.AutoFixture;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.ReleaseProfile;
using Recyclarr.TrashLib.Pipelines.ReleaseProfile.Filters;
namespace Recyclarr.TrashLib.Tests.Sonarr.ReleaseProfile.Filters;
namespace Recyclarr.Cli.Tests.Pipelines.ReleaseProfile.Filters;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,7 +1,8 @@
using Recyclarr.TrashLib.Pipelines.ReleaseProfile;
using Recyclarr.TrashLib.Pipelines.ReleaseProfile.Filters;
using Recyclarr.Cli.Pipelines.ReleaseProfile;
using Recyclarr.Cli.Pipelines.ReleaseProfile.Filters;
using Recyclarr.TestLibrary.AutoFixture;
namespace Recyclarr.TrashLib.Tests.Sonarr.ReleaseProfile.Filters;
namespace Recyclarr.Cli.Tests.Pipelines.ReleaseProfile.Filters;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,8 +1,9 @@
using Recyclarr.Cli.Pipelines.ReleaseProfile;
using Recyclarr.Cli.Pipelines.ReleaseProfile.Filters;
using Recyclarr.TestLibrary.AutoFixture;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.ReleaseProfile;
using Recyclarr.TrashLib.Pipelines.ReleaseProfile.Filters;
namespace Recyclarr.TrashLib.Tests.Sonarr.ReleaseProfile.Filters;
namespace Recyclarr.Cli.Tests.Pipelines.ReleaseProfile.Filters;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,8 +1,9 @@
using Recyclarr.TrashLib.Pipelines.ReleaseProfile;
using Recyclarr.TrashLib.Pipelines.ReleaseProfile.Guide;
using Recyclarr.Cli.Pipelines.ReleaseProfile;
using Recyclarr.Cli.Pipelines.ReleaseProfile.Guide;
using Recyclarr.TestLibrary.AutoFixture;
using Spectre.Console.Testing;
namespace Recyclarr.TrashLib.Tests.Services;
namespace Recyclarr.Cli.Tests.Pipelines.ReleaseProfile.Guide;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,16 +1,17 @@
using System.IO.Abstractions;
using System.IO.Abstractions.Extensions;
using Newtonsoft.Json;
using Recyclarr.Cli.Pipelines.ReleaseProfile;
using Recyclarr.Cli.Pipelines.ReleaseProfile.Guide;
using Recyclarr.TestLibrary;
using Recyclarr.TrashLib.Pipelines.ReleaseProfile;
using Recyclarr.TrashLib.Pipelines.ReleaseProfile.Guide;
using Recyclarr.TestLibrary.AutoFixture;
using Recyclarr.TrashLib.Repo;
namespace Recyclarr.TrashLib.Tests.Services;
namespace Recyclarr.Cli.Tests.Pipelines.ReleaseProfile.Guide;
[TestFixture]
[Parallelizable(ParallelScope.All)]
public class GuideServiceTest
public class ReleaseProfileGuideServiceTest
{
[Test, AutoMockData]
public void Get_release_profile_json_works(

@ -1,7 +1,7 @@
using FluentValidation.TestHelper;
using Recyclarr.TrashLib.Pipelines.ReleaseProfile;
using Recyclarr.Cli.Pipelines.ReleaseProfile;
namespace Recyclarr.TrashLib.Tests.Sonarr.ReleaseProfile;
namespace Recyclarr.Cli.Tests.Pipelines.ReleaseProfile;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,8 +1,9 @@
using Recyclarr.TrashLib.Pipelines.Tags;
using Recyclarr.TrashLib.Pipelines.Tags.Api;
using Recyclarr.TrashLib.Pipelines.Tags.PipelinePhases;
using Recyclarr.Cli.Pipelines.Tags;
using Recyclarr.Cli.Pipelines.Tags.Api;
using Recyclarr.Cli.Pipelines.Tags.PipelinePhases;
using Recyclarr.TestLibrary.AutoFixture;
namespace Recyclarr.TrashLib.Tests.Pipelines.Tags.PipelinePhases;
namespace Recyclarr.Cli.Tests.Pipelines.Tags.PipelinePhases;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,9 +1,10 @@
using Recyclarr.Cli.Pipelines.Tags;
using Recyclarr.Cli.Pipelines.Tags.Api;
using Recyclarr.Cli.Pipelines.Tags.PipelinePhases;
using Recyclarr.TestLibrary.AutoFixture;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.Tags;
using Recyclarr.TrashLib.Pipelines.Tags.Api;
using Recyclarr.TrashLib.Pipelines.Tags.PipelinePhases;
namespace Recyclarr.TrashLib.Tests.Pipelines.Tags.PipelinePhases;
namespace Recyclarr.Cli.Tests.Pipelines.Tags.PipelinePhases;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,7 +1,8 @@
using Recyclarr.Cli.Pipelines.Tags.PipelinePhases;
using Recyclarr.TestLibrary.AutoFixture;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.Tags.PipelinePhases;
namespace Recyclarr.TrashLib.Tests.Pipelines.Tags.PipelinePhases;
namespace Recyclarr.Cli.Tests.Pipelines.Tags.PipelinePhases;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,7 +1,8 @@
using Recyclarr.TrashLib.Pipelines.Tags.Api;
using Recyclarr.TrashLib.Pipelines.Tags.PipelinePhases;
using Recyclarr.Cli.Pipelines.Tags.Api;
using Recyclarr.Cli.Pipelines.Tags.PipelinePhases;
using Recyclarr.TestLibrary.AutoFixture;
namespace Recyclarr.TrashLib.Tests.Pipelines.Tags.PipelinePhases;
namespace Recyclarr.Cli.Tests.Pipelines.Tags.PipelinePhases;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,14 +1,14 @@
using System.IO.Abstractions;
using System.IO.Abstractions.Extensions;
using Recyclarr.Cli.Processors;
using Recyclarr.Cli.TestLibrary;
using Recyclarr.TrashLib.ExceptionTypes;
using Recyclarr.TrashLib.Processors;
namespace Recyclarr.TrashLib.Tests.Services.Processors;
namespace Recyclarr.Cli.Tests.Processors;
[TestFixture]
[Parallelizable(ParallelScope.All)]
public class ConfigCreationProcessorTest : IntegrationFixture
public class ConfigCreationProcessorTest : CliIntegrationFixture
{
[Test]
public async Task Config_file_created_when_using_default_path()

@ -1,8 +1,9 @@
using Recyclarr.Cli.Processors;
using Recyclarr.TestLibrary.Autofac;
using Recyclarr.TestLibrary.AutoFixture;
using Recyclarr.TrashLib.Config.Listers;
using Recyclarr.TrashLib.Processors;
namespace Recyclarr.TrashLib.Tests.Processors;
namespace Recyclarr.Cli.Tests.Processors;
[TestFixture]
[Parallelizable(ParallelScope.All)]

@ -1,11 +1,11 @@
using Recyclarr.Cli.TestLibrary;
using Recyclarr.TrashLib.Config.Settings;
using Recyclarr.TrashLib.Settings;
namespace Recyclarr.Cli.Tests;
[TestFixture]
[Parallelizable(ParallelScope.All)]
public class ServiceCompatibilityIntegrationTest : IntegrationFixture
public class ServiceCompatibilityIntegrationTest : CliIntegrationFixture
{
[Test]
public void Load_settings_yml_correctly_when_file_exists()

@ -4,26 +4,21 @@ using Autofac;
using Autofac.Extras.Ordering;
using AutoMapper.Contrib.Autofac.DependencyInjection;
using AutoMapper.EquivalencyExpression;
using FluentValidation;
using Recyclarr.Cli.Console.Helpers;
using Recyclarr.Cli.Console.Setup;
using Recyclarr.Cli.Logging;
using Recyclarr.Cli.Migration;
using Recyclarr.Cli.Pipelines;
using Recyclarr.Cli.Pipelines.CustomFormat;
using Recyclarr.Cli.Pipelines.QualityProfile;
using Recyclarr.Cli.Pipelines.QualitySize;
using Recyclarr.Cli.Pipelines.ReleaseProfile;
using Recyclarr.Cli.Pipelines.Tags;
using Recyclarr.Cli.Processors;
using Recyclarr.Common;
using Recyclarr.TrashLib.ApiServices;
using Recyclarr.TrashLib.Cache;
using Recyclarr.TrashLib.Compatibility;
using Recyclarr.TrashLib.Config;
using Recyclarr.TrashLib.Http;
using Recyclarr.TrashLib.Pipelines;
using Recyclarr.TrashLib.Pipelines.CustomFormat;
using Recyclarr.TrashLib.Pipelines.QualityProfile;
using Recyclarr.TrashLib.Pipelines.QualitySize;
using Recyclarr.TrashLib.Pipelines.ReleaseProfile;
using Recyclarr.TrashLib.Pipelines.Tags;
using Recyclarr.TrashLib.Processors;
using Recyclarr.TrashLib.Repo;
using Recyclarr.TrashLib.Repo.VersionControl;
using Recyclarr.TrashLib.Startup;
using Recyclarr.TrashLib;
using Recyclarr.TrashLib.Interfaces;
using Spectre.Console.Cli;
namespace Recyclarr.Cli;
@ -32,39 +27,28 @@ public static class CompositionRoot
{
public static void Setup(ContainerBuilder builder)
{
var assemblies = new[]
{
Assembly.GetExecutingAssembly(),
Assembly.Load("Recyclarr.Common"),
Assembly.Load("Recyclarr.Config.Data"),
Assembly.Load("Recyclarr.TrashLib")
};
var thisAssembly = typeof(CompositionRoot).Assembly;
RegisterAppPaths(builder);
RegisterLogger(builder);
builder.RegisterModule<VersionControlAutofacModule>();
builder.RegisterModule<MigrationAutofacModule>();
builder.RegisterModule<RepoAutofacModule>();
builder.RegisterModule<CompatibilityAutofacModule>();
builder.RegisterModule<ApiServicesAutofacModule>();
builder.RegisterModule(new ConfigAutofacModule(assemblies));
builder.RegisterModule<TrashLibAutofacModule>();
builder.RegisterModule<ServiceProcessorsAutofacModule>();
builder.RegisterModule(new CommonAutofacModule(Assembly.GetExecutingAssembly()));
// Needed for Autofac.Extras.Ordering
builder.RegisterSource<OrderedRegistrationSource>();
builder.RegisterModule<CacheAutofacModule>();
builder.RegisterType<CacheStoragePath>().As<ICacheStoragePath>();
builder.RegisterType<ServiceRequestBuilder>().As<IServiceRequestBuilder>();
builder.RegisterType<FileSystem>().As<IFileSystem>();
builder.Register(_ => new ResourceDataReader(thisAssembly)).As<IResourceDataReader>();
CommandRegistrations(builder);
PipelineRegistrations(builder);
builder.RegisterAutoMapper(c => c.AddCollectionMappers(), false, assemblies);
builder.RegisterAssemblyTypes(thisAssembly)
.AsClosedTypesOf(typeof(IValidator<>))
.As<IValidator>();
builder.RegisterType<FlurlClientFactory>().As<IFlurlClientFactory>().SingleInstance();
builder.RegisterAutoMapper(c => c.AddCollectionMappers(), false,
thisAssembly,
typeof(TrashLibAutofacModule).Assembly);
}
private static void PipelineRegistrations(ContainerBuilder builder)
@ -92,21 +76,6 @@ public static class CompositionRoot
builder.Register(c => c.Resolve<LoggerFactory>().Create()).As<ILogger>().SingleInstance();
}
private static void RegisterAppPaths(ContainerBuilder builder)
{
builder.RegisterType<FileSystem>().As<IFileSystem>();
builder.RegisterType<DefaultAppDataSetup>();
builder.Register(c =>
{
var appData = c.Resolve<AppDataPathProvider>();
var dataSetup = c.Resolve<DefaultAppDataSetup>();
return dataSetup.CreateAppPaths(appData.AppDataPath);
})
.As<IAppPaths>()
.SingleInstance();
}
private static void CommandRegistrations(ContainerBuilder builder)
{
builder.RegisterTypes(

@ -1,8 +1,8 @@
using System.ComponentModel;
using System.Diagnostics.CodeAnalysis;
using JetBrains.Annotations;
using Recyclarr.Cli.Processors;
using Recyclarr.TrashLib.ExceptionTypes;
using Recyclarr.TrashLib.Processors;
using Spectre.Console.Cli;
namespace Recyclarr.Cli.Console.Commands;

@ -2,9 +2,9 @@ using System.ComponentModel;
using System.Diagnostics.CodeAnalysis;
using JetBrains.Annotations;
using Recyclarr.Cli.Console.Helpers;
using Recyclarr.Cli.Processors;
using Recyclarr.TrashLib.Config.Listers;
using Recyclarr.TrashLib.ExceptionTypes;
using Recyclarr.TrashLib.Processors;
using Spectre.Console.Cli;
namespace Recyclarr.Cli.Console.Commands;

@ -2,8 +2,8 @@ using System.ComponentModel;
using System.Diagnostics.CodeAnalysis;
using JetBrains.Annotations;
using Recyclarr.Cli.Console.Helpers;
using Recyclarr.Cli.Pipelines.CustomFormat.Guide;
using Recyclarr.TrashLib.Config;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
using Recyclarr.TrashLib.Repo;
using Spectre.Console.Cli;

@ -2,8 +2,8 @@ using System.ComponentModel;
using System.Diagnostics.CodeAnalysis;
using JetBrains.Annotations;
using Recyclarr.Cli.Console.Helpers;
using Recyclarr.Cli.Pipelines.QualitySize.Guide;
using Recyclarr.TrashLib.Config;
using Recyclarr.TrashLib.Pipelines.QualitySize.Guide;
using Recyclarr.TrashLib.Repo;
using Spectre.Console.Cli;

@ -1,7 +1,7 @@
using System.ComponentModel;
using System.Diagnostics.CodeAnalysis;
using JetBrains.Annotations;
using Recyclarr.TrashLib.Pipelines.ReleaseProfile.Guide;
using Recyclarr.Cli.Pipelines.ReleaseProfile.Guide;
using Recyclarr.TrashLib.Repo;
using Spectre.Console.Cli;

@ -3,11 +3,12 @@ using System.Diagnostics.CodeAnalysis;
using System.IO.Abstractions;
using JetBrains.Annotations;
using Recyclarr.Cli.Console.Helpers;
using Recyclarr.Cli.Console.Settings;
using Recyclarr.Cli.Migration;
using Recyclarr.Cli.Pipelines.CustomFormat.Guide;
using Recyclarr.Cli.Pipelines.QualitySize.Guide;
using Recyclarr.Cli.Processors;
using Recyclarr.TrashLib.Config;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
using Recyclarr.TrashLib.Pipelines.QualitySize.Guide;
using Recyclarr.TrashLib.Processors;
using Recyclarr.TrashLib.Repo;
using Spectre.Console.Cli;

@ -3,12 +3,13 @@ using System.Diagnostics.CodeAnalysis;
using System.IO.Abstractions;
using JetBrains.Annotations;
using Recyclarr.Cli.Console.Helpers;
using Recyclarr.Cli.Console.Settings;
using Recyclarr.Cli.Migration;
using Recyclarr.Cli.Pipelines.CustomFormat.Guide;
using Recyclarr.Cli.Pipelines.QualitySize.Guide;
using Recyclarr.Cli.Pipelines.ReleaseProfile.Guide;
using Recyclarr.Cli.Processors;
using Recyclarr.TrashLib.Config;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
using Recyclarr.TrashLib.Pipelines.QualitySize.Guide;
using Recyclarr.TrashLib.Pipelines.ReleaseProfile.Guide;
using Recyclarr.TrashLib.Processors;
using Recyclarr.TrashLib.Repo;
using Spectre.Console.Cli;

@ -3,9 +3,10 @@ using System.Diagnostics.CodeAnalysis;
using System.IO.Abstractions;
using JetBrains.Annotations;
using Recyclarr.Cli.Console.Helpers;
using Recyclarr.Cli.Console.Settings;
using Recyclarr.Cli.Migration;
using Recyclarr.Cli.Processors;
using Recyclarr.TrashLib.Config;
using Recyclarr.TrashLib.Processors;
using Recyclarr.TrashLib.Repo;
using Spectre.Console.Cli;

@ -2,8 +2,8 @@ using System.Data.HashFunction.FNV;
using System.Globalization;
using System.IO.Abstractions;
using System.Text;
using Recyclarr.TrashLib.Cache;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Interfaces;
using Recyclarr.TrashLib.Startup;
namespace Recyclarr.Cli.Console.Helpers;

@ -1,7 +1,7 @@
using System.IO.Abstractions;
using Recyclarr.TrashLib.Config;
namespace Recyclarr.TrashLib.Processors;
namespace Recyclarr.Cli.Console.Settings;
public interface ISyncSettings
{

@ -2,7 +2,7 @@
using System.Reactive.Linq;
using System.Reactive.Subjects;
using Recyclarr.Cli.Console.Commands;
using Recyclarr.Cli.Console.Helpers;
using Recyclarr.TrashLib.Startup;
using Serilog.Core;
using Serilog.Events;
using Spectre.Console.Cli;

@ -1,5 +1,5 @@
using Recyclarr.Cli.Logging;
using Recyclarr.TrashLib.Config.Settings;
using Recyclarr.TrashLib.Settings;
namespace Recyclarr.Cli.Console.Setup;

@ -0,0 +1 @@
global using MoreLinq;

@ -1,9 +1,9 @@
using Flurl.Http;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Http;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Models;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.Api;
namespace Recyclarr.Cli.Pipelines.CustomFormat.Api;
public class CustomFormatService : ICustomFormatService
{

@ -1,7 +1,7 @@
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Models;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.Api;
namespace Recyclarr.Cli.Pipelines.CustomFormat.Api;
public interface ICustomFormatService
{

@ -1,11 +1,12 @@
using Autofac;
using Autofac.Extras.AggregateService;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Api;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Cache;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
using Recyclarr.TrashLib.Pipelines.CustomFormat.PipelinePhases;
using Recyclarr.Cli.Pipelines.CustomFormat.Api;
using Recyclarr.Cli.Pipelines.CustomFormat.Guide;
using Recyclarr.Cli.Pipelines.CustomFormat.Models;
using Recyclarr.Cli.Pipelines.CustomFormat.PipelinePhases;
using Recyclarr.TrashLib.Cache;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat;
namespace Recyclarr.Cli.Pipelines.CustomFormat;
public class CustomFormatAutofacModule : Module
{

@ -1,12 +1,13 @@
using System.Collections.ObjectModel;
using Recyclarr.Cli.Console.Settings;
using Recyclarr.Cli.Pipelines.CustomFormat.Models;
using Recyclarr.Cli.Pipelines.CustomFormat.PipelinePhases;
using Recyclarr.Common.Extensions;
using Recyclarr.TrashLib.Cache;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Cache;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Pipelines.CustomFormat.PipelinePhases;
using Recyclarr.TrashLib.Processors;
using Recyclarr.TrashLib.Models;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat;
namespace Recyclarr.Cli.Pipelines.CustomFormat;
public interface ICustomFormatPipelinePhases
{

@ -1,3 +1,3 @@
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
namespace Recyclarr.Cli.Pipelines.CustomFormat.Guide;
public record CustomFormatCategoryItem(string CategoryName, string CfName, string CfAnchor);

@ -2,7 +2,7 @@ using System.IO.Abstractions;
using System.Text.RegularExpressions;
using Recyclarr.Common.Extensions;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
namespace Recyclarr.Cli.Pipelines.CustomFormat.Guide;
public class CustomFormatCategoryParser : ICustomFormatCategoryParser
{

@ -1,7 +1,7 @@
using Recyclarr.TrashLib.Config;
using Spectre.Console;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
namespace Recyclarr.Cli.Pipelines.CustomFormat.Guide;
public class CustomFormatDataLister
{

@ -1,9 +1,9 @@
using System.IO.Abstractions;
using Recyclarr.TrashLib.Config;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Models;
using Recyclarr.TrashLib.Repo;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
namespace Recyclarr.Cli.Pipelines.CustomFormat.Guide;
public class CustomFormatGuideService : ICustomFormatGuideService
{

@ -4,9 +4,9 @@ using System.Reactive.Threading.Tasks;
using Newtonsoft.Json;
using Recyclarr.Common;
using Recyclarr.Common.Extensions;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Models;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
namespace Recyclarr.Cli.Pipelines.CustomFormat.Guide;
public class CustomFormatLoader : ICustomFormatLoader
{

@ -1,7 +1,7 @@
using Newtonsoft.Json;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Models;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
namespace Recyclarr.Cli.Pipelines.CustomFormat.Guide;
public class CustomFormatParser : ICustomFormatParser
{

@ -1,6 +1,6 @@
using System.IO.Abstractions;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
namespace Recyclarr.Cli.Pipelines.CustomFormat.Guide;
internal record CustomFormatPaths(
IReadOnlyList<IDirectoryInfo> CustomFormatDirectories,

@ -1,6 +1,6 @@
using System.IO.Abstractions;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
namespace Recyclarr.Cli.Pipelines.CustomFormat.Guide;
public interface ICustomFormatCategoryParser
{

@ -1,7 +1,7 @@
using Recyclarr.TrashLib.Config;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Models;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
namespace Recyclarr.Cli.Pipelines.CustomFormat.Guide;
public interface ICustomFormatGuideService
{

@ -1,7 +1,7 @@
using System.IO.Abstractions;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Models;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
namespace Recyclarr.Cli.Pipelines.CustomFormat.Guide;
public interface ICustomFormatLoader
{

@ -1,6 +1,6 @@
using Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Models;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
namespace Recyclarr.Cli.Pipelines.CustomFormat.Guide;
public interface ICustomFormatParser
{

@ -1,4 +1,6 @@
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Models;
namespace Recyclarr.Cli.Pipelines.CustomFormat.Models;
public record ConflictingCustomFormat(
CustomFormatData GuideCf,

@ -1,6 +1,7 @@
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Models;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
namespace Recyclarr.Cli.Pipelines.CustomFormat.Models;
public class ProcessedConfigData
{

@ -1,7 +1,7 @@
using Recyclarr.Common.Extensions;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Models;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.Cache;
namespace Recyclarr.Cli.Pipelines.CustomFormat.Models;
public class ProcessedCustomFormatCache : IPipelineCache
{

@ -1,8 +1,8 @@
using Recyclarr.Cli.Pipelines.CustomFormat.Api;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Api;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Models;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.PipelinePhases;
namespace Recyclarr.Cli.Pipelines.CustomFormat.PipelinePhases;
public class CustomFormatApiFetchPhase
{

@ -1,7 +1,7 @@
using Recyclarr.Cli.Pipelines.CustomFormat.Api;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Api;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.PipelinePhases;
namespace Recyclarr.Cli.Pipelines.CustomFormat.PipelinePhases;
public class CustomFormatApiPersistencePhase
{

@ -1,10 +1,10 @@
using Recyclarr.Cli.Pipelines.CustomFormat.Guide;
using Recyclarr.Cli.Pipelines.CustomFormat.Models;
using Recyclarr.Common.Extensions;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Cache;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Guide;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Models;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.PipelinePhases;
namespace Recyclarr.Cli.Pipelines.CustomFormat.PipelinePhases;
public class CustomFormatConfigPhase
{

@ -1,6 +1,6 @@
using Spectre.Console;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.PipelinePhases;
namespace Recyclarr.Cli.Pipelines.CustomFormat.PipelinePhases;
public class CustomFormatPreviewPhase
{

@ -1,9 +1,11 @@
using System.Diagnostics.CodeAnalysis;
using Recyclarr.Cli.Pipelines.CustomFormat.Models;
using Recyclarr.Common.Extensions;
using Recyclarr.TrashLib.Cache;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Models;
namespace Recyclarr.TrashLib.Pipelines.CustomFormat.PipelinePhases;
namespace Recyclarr.Cli.Pipelines.CustomFormat.PipelinePhases;
public class CustomFormatTransactionPhase
{

@ -1,4 +1,4 @@
namespace Recyclarr.TrashLib.Pipelines;
namespace Recyclarr.Cli.Pipelines;
/// <summary>
/// Defines a mechanism for state sharing between pipelines.

@ -1,7 +1,7 @@
using Recyclarr.Cli.Console.Settings;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Processors;
namespace Recyclarr.TrashLib.Pipelines;
namespace Recyclarr.Cli.Pipelines;
public interface ISyncPipeline
{

@ -1,6 +1,6 @@
using Recyclarr.TrashLib.Config.Services;
namespace Recyclarr.TrashLib.Pipelines.QualityProfile.Api;
namespace Recyclarr.Cli.Pipelines.QualityProfile.Api;
public interface IQualityProfileService
{

@ -3,7 +3,7 @@ using JetBrains.Annotations;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
namespace Recyclarr.TrashLib.Pipelines.QualityProfile.Api;
namespace Recyclarr.Cli.Pipelines.QualityProfile.Api;
[UsedImplicitly]
public record QualityProfileDto

@ -2,7 +2,7 @@ using Flurl.Http;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Http;
namespace Recyclarr.TrashLib.Pipelines.QualityProfile.Api;
namespace Recyclarr.Cli.Pipelines.QualityProfile.Api;
internal class QualityProfileService : IQualityProfileService
{

@ -1,7 +1,7 @@
using Recyclarr.Cli.Pipelines.QualityProfile.Api;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.QualityProfile.Api;
namespace Recyclarr.TrashLib.Pipelines.QualityProfile.PipelinePhases;
namespace Recyclarr.Cli.Pipelines.QualityProfile.PipelinePhases;
public class QualityProfileApiFetchPhase
{

@ -1,7 +1,7 @@
using Recyclarr.Cli.Pipelines.QualityProfile.Api;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.QualityProfile.Api;
namespace Recyclarr.TrashLib.Pipelines.QualityProfile.PipelinePhases;
namespace Recyclarr.Cli.Pipelines.QualityProfile.PipelinePhases;
public class QualityProfileApiPersistencePhase
{

@ -1,9 +1,9 @@
using Recyclarr.Cli.Pipelines.CustomFormat.Models;
using Recyclarr.Common.Extensions;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Cache;
using Recyclarr.TrashLib.Pipelines.CustomFormat.Models;
using Recyclarr.TrashLib.Models;
namespace Recyclarr.TrashLib.Pipelines.QualityProfile.PipelinePhases;
namespace Recyclarr.Cli.Pipelines.QualityProfile.PipelinePhases;
public record ProcessedQualityProfileData(QualityProfileConfig Profile)
{

@ -1,6 +1,6 @@
using Spectre.Console;
namespace Recyclarr.TrashLib.Pipelines.QualityProfile.PipelinePhases;
namespace Recyclarr.Cli.Pipelines.QualityProfile.PipelinePhases;
public class QualityProfilePreviewPhase
{

@ -1,8 +1,8 @@
using System.Collections.ObjectModel;
using System.Diagnostics.CodeAnalysis;
using Recyclarr.TrashLib.Pipelines.QualityProfile.Api;
using Recyclarr.Cli.Pipelines.QualityProfile.Api;
namespace Recyclarr.TrashLib.Pipelines.QualityProfile.PipelinePhases;
namespace Recyclarr.Cli.Pipelines.QualityProfile.PipelinePhases;
public record UpdatedQualityProfile(QualityProfileDto UpdatedProfile)
{

@ -1,9 +1,9 @@
using Autofac;
using Autofac.Extras.AggregateService;
using Recyclarr.TrashLib.Pipelines.QualityProfile.Api;
using Recyclarr.TrashLib.Pipelines.QualityProfile.PipelinePhases;
using Recyclarr.Cli.Pipelines.QualityProfile.Api;
using Recyclarr.Cli.Pipelines.QualityProfile.PipelinePhases;
namespace Recyclarr.TrashLib.Pipelines.QualityProfile;
namespace Recyclarr.Cli.Pipelines.QualityProfile;
public class QualityProfileAutofacModule : Module
{

@ -1,8 +1,8 @@
using Recyclarr.Cli.Console.Settings;
using Recyclarr.Cli.Pipelines.QualityProfile.PipelinePhases;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Pipelines.QualityProfile.PipelinePhases;
using Recyclarr.TrashLib.Processors;
namespace Recyclarr.TrashLib.Pipelines.QualityProfile;
namespace Recyclarr.Cli.Pipelines.QualityProfile;
public interface IQualityProfilePipelinePhases
{

@ -1,4 +1,4 @@
namespace Recyclarr.TrashLib.Pipelines.QualityProfile;
namespace Recyclarr.Cli.Pipelines.QualityProfile;
public enum FormatScoreUpdateReason
{

@ -1,6 +1,6 @@
using Recyclarr.TrashLib.Config.Services;
namespace Recyclarr.TrashLib.Pipelines.QualitySize.Api;
namespace Recyclarr.Cli.Pipelines.QualitySize.Api;
public interface IQualityDefinitionService
{

@ -2,7 +2,7 @@ using Flurl.Http;
using Recyclarr.TrashLib.Config.Services;
using Recyclarr.TrashLib.Http;
namespace Recyclarr.TrashLib.Pipelines.QualitySize.Api;
namespace Recyclarr.Cli.Pipelines.QualitySize.Api;
internal class QualityDefinitionService : IQualityDefinitionService
{

@ -1,6 +1,6 @@
using JetBrains.Annotations;
namespace Recyclarr.TrashLib.Pipelines.QualitySize.Api;
namespace Recyclarr.Cli.Pipelines.QualitySize.Api;
[UsedImplicitly(ImplicitUseTargetFlags.WithMembers)]
public class ServiceQualityItem

@ -1,6 +1,6 @@
using Recyclarr.TrashLib.Config;
namespace Recyclarr.TrashLib.Pipelines.QualitySize.Guide;
namespace Recyclarr.Cli.Pipelines.QualitySize.Guide;
public interface IQualityGuideService
{

@ -1,7 +1,7 @@
using Recyclarr.TrashLib.Config;
using Recyclarr.TrashLib.Repo;
namespace Recyclarr.TrashLib.Pipelines.QualitySize.Guide;
namespace Recyclarr.Cli.Pipelines.QualitySize.Guide;
public class QualityGuideService : IQualityGuideService
{

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save