refactor(tests): Reorganize test projects for better structure

- Remove integration test projects and fold their tests into Core.Tests
  and Cli.Tests
- Rename Recyclarr.Tests to Recyclarr.Core.Tests
- Rename TestLibrary to Core.TestLibrary to clarify ownership
- Remove InternalsVisibleTo references for integration tests
- Remove unnecessary project references
pull/432/head
Robert Dailey 2 months ago
parent e92e0c8e68
commit f6e68eed5e

@ -28,7 +28,6 @@
<!-- For only NON-TEST projects -->
<ItemGroup Condition="!$(MSBuildProjectName.EndsWith('Tests'))">
<InternalsVisibleTo Include="$(MSBuildProjectName).Tests" />
<InternalsVisibleTo Include="$(MSBuildProjectName).IntegrationTests" />
</ItemGroup>
<!-- ReferenceTrimmer - run build with /p:EnableReferenceTrimmer=true to enable -->

@ -18,7 +18,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Props", "Props", "{305C2AC5
.config\dotnet-tools.json = .config\dotnet-tools.json
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Recyclarr.Tests", "tests\Recyclarr.Tests\Recyclarr.Tests.csproj", "{A4EC7E0D-C591-4874-B9AC-EB12A96F3E83}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Recyclarr.Core.Tests", "tests\Recyclarr.Core.Tests\Recyclarr.Core.Tests.csproj", "{A4EC7E0D-C591-4874-B9AC-EB12A96F3E83}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{18E17C53-F600-40AE-82C1-3CD1E547C307}"
ProjectSection(SolutionItems) = preProject
@ -26,11 +26,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{18E17C53
tests\.editorconfig = tests\.editorconfig
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.Tests.TestLibrary", "tests\Recyclarr.Tests.TestLibrary\Recyclarr.Tests.TestLibrary.csproj", "{DE198BA1-2906-43BB-9CDB-977B9218A670}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.IntegrationTests", "tests\Recyclarr.IntegrationTests\Recyclarr.IntegrationTests.csproj", "{0D472E9E-81D9-4E33-8542-A973CF9E4EA8}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.Cli.IntegrationTests", "tests\Recyclarr.Cli.IntegrationTests\Recyclarr.Cli.IntegrationTests.csproj", "{CB14F77E-1457-41E9-8BA2-B059A11105AE}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.Core.TestLibrary", "tests\Recyclarr.Core.TestLibrary\Recyclarr.Core.TestLibrary.csproj", "{DE198BA1-2906-43BB-9CDB-977B9218A670}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.Cli.Tests", "tests\Recyclarr.Cli.Tests\Recyclarr.Cli.Tests.csproj", "{59886A2A-338F-4864-9735-1633433B1F8F}"
EndProject
@ -60,14 +56,6 @@ Global
{DE198BA1-2906-43BB-9CDB-977B9218A670}.Debug|Any CPU.Build.0 = Debug|Any CPU
{DE198BA1-2906-43BB-9CDB-977B9218A670}.Release|Any CPU.ActiveCfg = Release|Any CPU
{DE198BA1-2906-43BB-9CDB-977B9218A670}.Release|Any CPU.Build.0 = Release|Any CPU
{0D472E9E-81D9-4E33-8542-A973CF9E4EA8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0D472E9E-81D9-4E33-8542-A973CF9E4EA8}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0D472E9E-81D9-4E33-8542-A973CF9E4EA8}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0D472E9E-81D9-4E33-8542-A973CF9E4EA8}.Release|Any CPU.Build.0 = Release|Any CPU
{CB14F77E-1457-41E9-8BA2-B059A11105AE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{CB14F77E-1457-41E9-8BA2-B059A11105AE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CB14F77E-1457-41E9-8BA2-B059A11105AE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{CB14F77E-1457-41E9-8BA2-B059A11105AE}.Release|Any CPU.Build.0 = Release|Any CPU
{59886A2A-338F-4864-9735-1633433B1F8F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{59886A2A-338F-4864-9735-1633433B1F8F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{59886A2A-338F-4864-9735-1633433B1F8F}.Release|Any CPU.ActiveCfg = Release|Any CPU
@ -91,8 +79,6 @@ Global
{49F28A82-468F-4C48-9A59-D41B8FE26D6E} = {18E17C53-F600-40AE-82C1-3CD1E547C307}
{A4EC7E0D-C591-4874-B9AC-EB12A96F3E83} = {18E17C53-F600-40AE-82C1-3CD1E547C307}
{DE198BA1-2906-43BB-9CDB-977B9218A670} = {18E17C53-F600-40AE-82C1-3CD1E547C307}
{0D472E9E-81D9-4E33-8542-A973CF9E4EA8} = {18E17C53-F600-40AE-82C1-3CD1E547C307}
{CB14F77E-1457-41E9-8BA2-B059A11105AE} = {18E17C53-F600-40AE-82C1-3CD1E547C307}
{59886A2A-338F-4864-9735-1633433B1F8F} = {18E17C53-F600-40AE-82C1-3CD1E547C307}
{7B730BDB-1519-4847-BA23-998AB3750E31} = {18E17C53-F600-40AE-82C1-3CD1E547C307}
EndGlobalSection

@ -1,8 +0,0 @@
<Project Sdk="Microsoft.NET.Sdk">
<ItemGroup>
<ProjectReference Include="..\..\src\Recyclarr.Cli\Recyclarr.Cli.csproj" />
<ProjectReference Include="..\..\src\Recyclarr.Core\Recyclarr.Core.csproj" />
<ProjectReference Include="..\Recyclarr.Cli.TestLibrary\Recyclarr.Cli.TestLibrary.csproj" />
<ProjectReference Include="..\Recyclarr.IntegrationTests\Recyclarr.IntegrationTests.csproj" />
</ItemGroup>
</Project>

@ -1,9 +1,9 @@
using Autofac;
using Recyclarr.TestLibrary;
using Recyclarr.Core.TestLibrary;
namespace Recyclarr.Cli.IntegrationTests;
namespace Recyclarr.Cli.TestLibrary;
internal abstract class CliIntegrationFixture : IntegrationTestFixture
public abstract class CliIntegrationFixture : IntegrationTestFixture
{
protected override void RegisterTypes(ContainerBuilder builder)
{

@ -2,6 +2,6 @@
<ItemGroup>
<ProjectReference Include="..\..\src\Recyclarr.Cli\Recyclarr.Cli.csproj" />
<ProjectReference Include="..\..\src\Recyclarr.Core\Recyclarr.Core.csproj" />
<ProjectReference Include="..\Recyclarr.Tests.TestLibrary\Recyclarr.Tests.TestLibrary.csproj" />
<ProjectReference Include="..\Recyclarr.Core.TestLibrary\Recyclarr.Core.TestLibrary.csproj" />
</ItemGroup>
</Project>

@ -1,5 +1,5 @@
using Recyclarr.Cli.Pipelines.QualitySize.PipelinePhases.Limits;
using Recyclarr.Tests.TestLibrary;
using Recyclarr.Core.TestLibrary;
using Recyclarr.TrashGuide;
using Recyclarr.TrashGuide.QualitySize;

@ -1,7 +1,7 @@
using Recyclarr.Cli.Pipelines.CustomFormat.Cache;
using Recyclarr.Cli.Pipelines.CustomFormat.Models;
using Recyclarr.Cli.TestLibrary;
using Recyclarr.Tests.TestLibrary;
using Recyclarr.Core.TestLibrary;
namespace Recyclarr.Cli.Tests.Cache;

@ -1,9 +1,10 @@
using AutoMapper;
using Recyclarr.Cli.TestLibrary;
namespace Recyclarr.Cli.IntegrationTests;
namespace Recyclarr.Cli.Tests.IntegrationTests;
[TestFixture]
internal class AutoMapperConfigurationTest : CliIntegrationFixture
internal sealed class AutoMapperConfigurationTest : CliIntegrationFixture
{
[Test]
public void Automapper_config_is_valid()

@ -1,11 +1,12 @@
using System.IO.Abstractions;
using Recyclarr.Cli.Console.Setup;
using Recyclarr.Cli.TestLibrary;
using Recyclarr.Settings;
namespace Recyclarr.Cli.IntegrationTests;
namespace Recyclarr.Cli.Tests.IntegrationTests;
[TestFixture]
internal class BaseCommandSetupIntegrationTest : CliIntegrationFixture
internal sealed class BaseCommandSetupIntegrationTest : CliIntegrationFixture
{
[Test]
public void Log_janitor_cleans_up_user_specified_max_files()

@ -5,9 +5,9 @@ using Recyclarr.Repo;
using Recyclarr.TestLibrary;
using Spectre.Console.Cli;
namespace Recyclarr.Cli.IntegrationTests;
namespace Recyclarr.Cli.Tests.IntegrationTests;
internal class CliCommandIntegrationTest : CliIntegrationFixture
internal sealed class CliCommandIntegrationTest : CliIntegrationFixture
{
private static readonly TrashRepoFileMapper Mapper = new();

@ -1,4 +1,5 @@
using System.Collections;
using System.Diagnostics.CodeAnalysis;
using Autofac;
using Autofac.Core;
using NUnit.Framework.Internal;
@ -7,12 +8,16 @@ using Recyclarr.Platform;
using Recyclarr.TestLibrary.Autofac;
using Spectre.Console;
namespace Recyclarr.Cli.IntegrationTests;
namespace Recyclarr.Cli.Tests.IntegrationTests;
[TestFixture]
public class CompositionRootTest
{
[UsedImplicitly]
[SuppressMessage(
"Microsoft.Performance",
"CA1812:AvoidUninstantiatedInternalClasses",
Justification = "Instantiated via TestCaseSource"
)]
private sealed class ConcreteTypeEnumerator : IEnumerable
{
public IEnumerator GetEnumerator()

@ -2,12 +2,13 @@ using System.IO.Abstractions;
using Recyclarr.Cli.Console.Commands;
using Recyclarr.Cli.Console.Settings;
using Recyclarr.Cli.Processors.Config;
using Recyclarr.Cli.TestLibrary;
using Recyclarr.Repo;
namespace Recyclarr.Cli.IntegrationTests;
namespace Recyclarr.Cli.Tests.IntegrationTests;
[TestFixture]
internal class ConfigCreationProcessorIntegrationTest : CliIntegrationFixture
internal sealed class ConfigCreationProcessorIntegrationTest : CliIntegrationFixture
{
[Test]
public void Config_file_created_when_using_default_path()

@ -4,13 +4,13 @@ using Recyclarr.Cli.Pipelines.CustomFormat.Models;
using Recyclarr.Cli.Pipelines.CustomFormat.PipelinePhases;
using Recyclarr.Cli.TestLibrary;
using Recyclarr.Config;
using Recyclarr.Tests.TestLibrary;
using Recyclarr.Core.TestLibrary;
using Recyclarr.TrashGuide.CustomFormat;
namespace Recyclarr.Cli.IntegrationTests;
namespace Recyclarr.Cli.Tests.IntegrationTests;
[TestFixture]
internal class CustomFormatTransactionPhaseTest : CliIntegrationFixture
internal sealed class CustomFormatTransactionPhaseTest : CliIntegrationFixture
{
[Test]
public async Task Add_new_cf()

@ -1,10 +1,11 @@
using System.IO.Abstractions;
using Recyclarr.Cli.TestLibrary;
using Recyclarr.Settings;
namespace Recyclarr.Cli.IntegrationTests;
namespace Recyclarr.Cli.Tests.IntegrationTests;
[TestFixture]
internal class ServiceCompatibilityIntegrationTest : CliIntegrationFixture
internal sealed class ServiceCompatibilityIntegrationTest : CliIntegrationFixture
{
[Test]
public void Load_settings_yml_correctly_when_file_exists()

@ -1,12 +1,13 @@
using System.IO.Abstractions;
using Recyclarr.Cli.Console.Settings;
using Recyclarr.Cli.Processors.Config;
using Recyclarr.Cli.TestLibrary;
using Recyclarr.Repo;
namespace Recyclarr.Cli.IntegrationTests;
namespace Recyclarr.Cli.Tests.IntegrationTests;
[TestFixture]
internal class TemplateConfigCreatorIntegrationTest : CliIntegrationFixture
internal sealed class TemplateConfigCreatorIntegrationTest : CliIntegrationFixture
{
[Test]
public void Template_id_matching_works()

@ -1,6 +1,6 @@
using Recyclarr.Cli.Console.Settings;
using Recyclarr.Cli.Pipelines.CustomFormat;
using Recyclarr.Tests.TestLibrary;
using Recyclarr.Core.TestLibrary;
using Recyclarr.TrashGuide.CustomFormat;
using Spectre.Console.Testing;

@ -2,7 +2,7 @@ using AutoFixture;
using Recyclarr.Cli.Pipelines.CustomFormat;
using Recyclarr.Cli.Pipelines.CustomFormat.PipelinePhases;
using Recyclarr.Config.Models;
using Recyclarr.Tests.TestLibrary;
using Recyclarr.Core.TestLibrary;
using Recyclarr.TrashGuide.CustomFormat;
namespace Recyclarr.Cli.Tests.Pipelines.CustomFormat.PipelinePhases;

@ -11,7 +11,7 @@ namespace Recyclarr.Cli.Tests.Pipelines.MediaNaming;
"CA2000:Dispose objects before losing scope",
Justification = "Do not care about disposal in a testing context"
)]
internal class MediaNamingTransactionPhaseRadarrTest
internal sealed class MediaNamingTransactionPhaseRadarrTest
{
[Test, AutoMockData]
public async Task Radarr_left_null(MediaNamingTransactionPhase sut)

@ -3,7 +3,7 @@ using Recyclarr.Cli.Pipelines.CustomFormat.Models;
using Recyclarr.Cli.Pipelines.QualityProfile;
using Recyclarr.Cli.Pipelines.QualityProfile.PipelinePhases;
using Recyclarr.Config.Models;
using Recyclarr.Tests.TestLibrary;
using Recyclarr.Core.TestLibrary;
namespace Recyclarr.Cli.Tests.Pipelines.QualityProfile.PipelinePhases;

@ -7,7 +7,7 @@ using Recyclarr.ServarrApi.QualityProfile;
namespace Recyclarr.Cli.Tests.Pipelines.QualityProfile.PipelinePhases;
[TestFixture]
internal class QualityProfileTransactionPhaseTest
internal sealed class QualityProfileTransactionPhaseTest
{
[Test, AutoMockData]
public async Task Non_existent_profile_names_mixed_with_valid_profiles(

@ -9,7 +9,7 @@ using Recyclarr.TrashGuide.QualitySize;
namespace Recyclarr.Cli.Tests.Pipelines.QualitySize.PipelinePhases;
[TestFixture]
internal class QualitySizeConfigPhaseTest
internal sealed class QualitySizeConfigPhaseTest
{
[Test, AutoMockData]
public async Task Do_nothing_if_no_quality_definition(

@ -1,12 +1,12 @@
using Recyclarr.Cli.Pipelines.QualitySize;
using Recyclarr.Cli.Pipelines.QualitySize.PipelinePhases;
using Recyclarr.Core.TestLibrary;
using Recyclarr.ServarrApi.QualityDefinition;
using Recyclarr.Tests.TestLibrary;
namespace Recyclarr.Cli.Tests.Pipelines.QualitySize.PipelinePhases;
[TestFixture]
internal class QualitySizeTransactionPhaseTest
internal sealed class QualitySizeTransactionPhaseTest
{
[Test, AutoMockData]
public async Task Skip_guide_qualities_that_do_not_exist_in_service(

@ -1,9 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<ItemGroup>
<ProjectReference Include="..\..\src\Recyclarr.Cli\Recyclarr.Cli.csproj" />
<ProjectReference Include="..\..\src\Recyclarr.Core\Recyclarr.Core.csproj" />
<ProjectReference Include="..\Recyclarr.Cli.TestLibrary\Recyclarr.Cli.TestLibrary.csproj" />
<ProjectReference Include="..\Recyclarr.TestLibrary\Recyclarr.TestLibrary.csproj" />
<ProjectReference Include="..\Recyclarr.Tests.TestLibrary\Recyclarr.Tests.TestLibrary.csproj" />
</ItemGroup>
</Project>

@ -4,12 +4,13 @@ using Autofac.Extras.Ordering;
using Autofac.Features.ResolveAnything;
using Recyclarr.Compatibility;
using Recyclarr.Platform;
using Recyclarr.TestLibrary;
using Recyclarr.TestLibrary.Autofac;
using Recyclarr.VersionControl;
using Spectre.Console;
using Spectre.Console.Testing;
namespace Recyclarr.TestLibrary;
namespace Recyclarr.Core.TestLibrary;
public abstract class IntegrationTestFixture : IDisposable
{

@ -1,6 +1,6 @@
using Recyclarr.TrashGuide.CustomFormat;
namespace Recyclarr.Tests.TestLibrary;
namespace Recyclarr.Core.TestLibrary;
public static class NewCf
{

@ -1,6 +1,6 @@
using Recyclarr.Config.Models;
namespace Recyclarr.Tests.TestLibrary;
namespace Recyclarr.Core.TestLibrary;
public static class NewConfig
{

@ -1,6 +1,6 @@
using Recyclarr.TrashGuide.QualitySize;
namespace Recyclarr.Tests.TestLibrary;
namespace Recyclarr.Core.TestLibrary;
public static class NewQualitySize
{

@ -1,5 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<ItemGroup>
<ProjectReference Include="..\..\src\Recyclarr.Core\Recyclarr.Core.csproj" />
<ProjectReference Include="..\Recyclarr.TestLibrary\Recyclarr.TestLibrary.csproj" />
</ItemGroup>
</Project>

@ -1,7 +1,7 @@
using Autofac;
using Recyclarr.Config;
namespace Recyclarr.Tests.TestLibrary;
namespace Recyclarr.Core.TestLibrary;
public class TestConfigurationScope(ILifetimeScope scope) : ConfigurationScope(scope)
{

@ -1,4 +1,4 @@
namespace Recyclarr.Tests.TestLibrary;
namespace Recyclarr.Core.TestLibrary;
public static class TestQualityItemLimits
{

@ -1,7 +1,7 @@
using Recyclarr.Cache;
using Recyclarr.Config.Models;
namespace Recyclarr.Tests.Cache;
namespace Recyclarr.Core.Tests.Cache;
[TestFixture]
public class CachePersisterTest

@ -3,7 +3,7 @@ using AutoFixture;
using Recyclarr.Cache;
using Recyclarr.Config.Models;
namespace Recyclarr.Tests.Cache;
namespace Recyclarr.Core.Tests.Cache;
[TestFixture]
[SuppressMessage(

@ -1,6 +1,6 @@
using Recyclarr.Cache;
namespace Recyclarr.Tests.Cache;
namespace Recyclarr.Core.Tests.Cache;
[CacheObjectName("test-cache")]
public record TestCacheObject() : CacheObject(LatestVersion)

@ -1,7 +1,7 @@
using Recyclarr.Cache;
using Recyclarr.Config.Models;
namespace Recyclarr.Tests.Cache;
namespace Recyclarr.Core.Tests.Cache;
// This class exists because AutoFixture does not use NSubstitute's ForPartsOf()
// See: https://github.com/AutoFixture/AutoFixture/issues/1355

@ -1,7 +1,7 @@
using System.Diagnostics.CodeAnalysis;
using Recyclarr.Common.Extensions;
namespace Recyclarr.Tests.Common.Extensions;
namespace Recyclarr.Core.Tests.Common.Extensions;
[TestFixture]
public class DictionaryExtensionsTest

@ -4,7 +4,7 @@ using Recyclarr.Common;
using Recyclarr.Common.Extensions;
using Recyclarr.TestLibrary;
namespace Recyclarr.Tests.Common.Extensions;
namespace Recyclarr.Core.Tests.Common.Extensions;
[TestFixture]
public class FileSystemExtensionsTest

@ -1,6 +1,6 @@
using Recyclarr.Common.Extensions;
namespace Recyclarr.Tests.Common.Extensions;
namespace Recyclarr.Core.Tests.Common.Extensions;
[TestFixture]
public class StringExtensionsTest

@ -1,6 +1,6 @@
using Recyclarr.Common;
namespace Recyclarr.Tests.Common;
namespace Recyclarr.Core.Tests.Common;
[TestFixture]
public class ResourceDataReaderTest

@ -1,6 +1,6 @@
using Recyclarr.Common;
namespace Recyclarr.Tests.Common;
namespace Recyclarr.Core.Tests.Common;
[TestFixture]
public class ScopedStateTest

@ -1,7 +1,7 @@
using Recyclarr.Compatibility;
using Recyclarr.Compatibility.Sonarr;
namespace Recyclarr.Tests.Compatibility.Sonarr;
namespace Recyclarr.Core.Tests.Compatibility.Sonarr;
[TestFixture]
public class SonarrCapabilityEnforcerTest

@ -3,7 +3,7 @@
// using Recyclarr.Config.Parsing;
// using Recyclarr.TrashGuide;
//
// namespace Recyclarr.Tests.Config;
// namespace Recyclarr.Core.Tests.Config;
//
// [TestFixture]
// public class ConfigExtensionsTest

@ -1,6 +1,6 @@
using Recyclarr.Config.EnvironmentVariables;
namespace Recyclarr.Tests.Config.EnvironmentVariables;
namespace Recyclarr.Core.Tests.Config.EnvironmentVariables;
[TestFixture]
public class EnvironmentVariableNotDefinedExceptionTest

@ -1,9 +1,9 @@
using Recyclarr.Config.Filtering;
using Recyclarr.Config.Parsing;
using Recyclarr.TestLibrary;
using Recyclarr.Core.TestLibrary;
using Recyclarr.TrashGuide;
namespace Recyclarr.Tests.Config.Filtering;
namespace Recyclarr.Core.Tests.Config.Filtering;
[TestFixture]
public class ConfigFiltersTest : IntegrationTestFixture

@ -2,9 +2,9 @@ using FluentValidation;
using FluentValidation.Results;
using Recyclarr.Common.FluentValidation;
using Recyclarr.Config.Parsing;
using Recyclarr.Tests.TestLibrary;
using Recyclarr.Core.TestLibrary;
namespace Recyclarr.Tests.Config.Parsing;
namespace Recyclarr.Core.Tests.Config.Parsing;
[TestFixture]
public class ConfigValidationExecutorTest

@ -1,7 +1,7 @@
using FluentValidation.TestHelper;
using Recyclarr.Config.Parsing;
namespace Recyclarr.Tests.Config.Parsing;
namespace Recyclarr.Core.Tests.Config.Parsing;
[TestFixture]
public class ConfigYamlDataObjectsValidationTest

@ -2,7 +2,7 @@ using AutoMapper;
using Recyclarr.Config.Models;
using Recyclarr.Config.Parsing;
namespace Recyclarr.Tests.Config.Parsing;
namespace Recyclarr.Core.Tests.Config.Parsing;
[TestFixture]
public class ConfigYamlMapperProfileTest

@ -3,7 +3,7 @@ using Recyclarr.Config.Parsing;
using Recyclarr.Config.Parsing.ErrorHandling;
using Recyclarr.Platform;
namespace Recyclarr.Tests.Config.Parsing;
namespace Recyclarr.Core.Tests.Config.Parsing;
[TestFixture]
public class ConfigurationFinderTest

@ -2,7 +2,7 @@ using System.IO.Abstractions;
using Recyclarr.Config.Parsing.PostProcessing.ConfigMerging;
using Recyclarr.Platform;
namespace Recyclarr.Tests.Config.Parsing.PostProcessing.ConfigMerging;
namespace Recyclarr.Core.Tests.Config.Parsing.PostProcessing.ConfigMerging;
[TestFixture]
public class ConfigIncludeProcessorTest

@ -1,7 +1,7 @@
using Recyclarr.Config.Parsing;
using Recyclarr.Config.Parsing.PostProcessing.ConfigMerging;
namespace Recyclarr.Tests.Config.Parsing.PostProcessing.ConfigMerging;
namespace Recyclarr.Core.Tests.Config.Parsing.PostProcessing.ConfigMerging;
[TestFixture]
public class MergeApiKeyTest

@ -1,7 +1,7 @@
using Recyclarr.Config.Parsing;
using Recyclarr.Config.Parsing.PostProcessing.ConfigMerging;
namespace Recyclarr.Tests.Config.Parsing.PostProcessing.ConfigMerging;
namespace Recyclarr.Core.Tests.Config.Parsing.PostProcessing.ConfigMerging;
[TestFixture]
public class MergeBaseUrlTest

@ -1,7 +1,7 @@
using Recyclarr.Config.Parsing;
using Recyclarr.Config.Parsing.PostProcessing.ConfigMerging;
namespace Recyclarr.Tests.Config.Parsing.PostProcessing.ConfigMerging;
namespace Recyclarr.Core.Tests.Config.Parsing.PostProcessing.ConfigMerging;
[TestFixture]
public class MergeCustomFormatsTest

@ -2,7 +2,7 @@ using System.Diagnostics.CodeAnalysis;
using Recyclarr.Config.Parsing;
using Recyclarr.Config.Parsing.PostProcessing.ConfigMerging;
namespace Recyclarr.Tests.Config.Parsing.PostProcessing.ConfigMerging;
namespace Recyclarr.Core.Tests.Config.Parsing.PostProcessing.ConfigMerging;
[TestFixture]
public class MergeMediaNamingRadarrTest

@ -2,7 +2,7 @@ using System.Diagnostics.CodeAnalysis;
using Recyclarr.Config.Parsing;
using Recyclarr.Config.Parsing.PostProcessing.ConfigMerging;
namespace Recyclarr.Tests.Config.Parsing.PostProcessing.ConfigMerging;
namespace Recyclarr.Core.Tests.Config.Parsing.PostProcessing.ConfigMerging;
[TestFixture]
public class MergeMediaNamingSonarrTest

@ -1,7 +1,7 @@
using Recyclarr.Config.Parsing;
using Recyclarr.Config.Parsing.PostProcessing.ConfigMerging;
namespace Recyclarr.Tests.Config.Parsing.PostProcessing.ConfigMerging;
namespace Recyclarr.Core.Tests.Config.Parsing.PostProcessing.ConfigMerging;
[TestFixture]
public class MergeQualityDefinitionTest

@ -3,7 +3,7 @@ using Recyclarr.Config.Models;
using Recyclarr.Config.Parsing;
using Recyclarr.Config.Parsing.PostProcessing.ConfigMerging;
namespace Recyclarr.Tests.Config.Parsing.PostProcessing.ConfigMerging;
namespace Recyclarr.Core.Tests.Config.Parsing.PostProcessing.ConfigMerging;
[TestFixture]
public class MergeQualityProfilesTest

@ -2,7 +2,7 @@ using System.IO.Abstractions;
using Recyclarr.Config.Parsing.PostProcessing.ConfigMerging;
using Recyclarr.TrashGuide;
namespace Recyclarr.Tests.Config.Parsing.PostProcessing.ConfigMerging;
namespace Recyclarr.Core.Tests.Config.Parsing.PostProcessing.ConfigMerging;
[TestFixture]
public class TemplateIncludeProcessorTest

@ -4,7 +4,7 @@ using Recyclarr.Config.Parsing.PostProcessing.ConfigMerging;
using Recyclarr.TestLibrary.Autofac;
using Recyclarr.TrashGuide;
namespace Recyclarr.Tests.Config.Parsing.PostProcessing.ConfigMerging;
namespace Recyclarr.Core.Tests.Config.Parsing.PostProcessing.ConfigMerging;
[TestFixture]
[SuppressMessage("Design", "CA1034:Nested types should not be visible")]

@ -2,7 +2,7 @@ using Recyclarr.Config.Parsing;
using Recyclarr.Config.Parsing.PostProcessing;
using Recyclarr.Config.Secrets;
namespace Recyclarr.Tests.Config.Parsing.PostProcessing;
namespace Recyclarr.Core.Tests.Config.Parsing.PostProcessing;
[TestFixture]
public class ImplicitUrlAndKeyPostProcessorTest

@ -2,7 +2,7 @@ using FluentValidation.TestHelper;
using Recyclarr.Config.Models;
using Recyclarr.Config.Parsing;
namespace Recyclarr.Tests.Config.Parsing;
namespace Recyclarr.Core.Tests.Config.Parsing;
[TestFixture]
public class YamlConfigValidatorTest

@ -1,6 +1,6 @@
using Recyclarr.Config.Secrets;
namespace Recyclarr.Tests.Config.Secrets;
namespace Recyclarr.Core.Tests.Config.Secrets;
[TestFixture]
public class SecretNotFoundExceptionTest

@ -3,7 +3,7 @@ using Recyclarr.Platform;
using Recyclarr.Settings;
using Recyclarr.Yaml;
namespace Recyclarr.Tests.Config.Settings;
namespace Recyclarr.Core.Tests.Config.Settings;
[TestFixture]
public class SettingsLoaderTest

@ -1,9 +1,9 @@
using System.Diagnostics.CodeAnalysis;
using System.IO.Abstractions;
using Recyclarr.Core.TestLibrary;
using Recyclarr.Json.Loading;
using Recyclarr.TestLibrary;
namespace Recyclarr.IntegrationTests;
namespace Recyclarr.Core.Tests.IntegrationTests;
[TestFixture]
public class BulkJsonLoaderIntegrationTest : IntegrationTestFixture

@ -1,8 +1,8 @@
using System.IO.Abstractions;
using Recyclarr.Config.Parsing;
using Recyclarr.TestLibrary;
using Recyclarr.Core.TestLibrary;
namespace Recyclarr.IntegrationTests;
namespace Recyclarr.Core.Tests.IntegrationTests;
[TestFixture]
public class ConfigSaverTest : IntegrationTestFixture

@ -1,10 +1,10 @@
using System.IO.Abstractions;
using Recyclarr.Core.TestLibrary;
using Recyclarr.Repo;
using Recyclarr.TestLibrary;
using Recyclarr.TestLibrary.AutoFixture;
using Recyclarr.TrashGuide;
namespace Recyclarr.IntegrationTests;
namespace Recyclarr.Core.Tests.IntegrationTests;
[TestFixture]
public class ConfigTemplateGuideServiceIntegrationTest : IntegrationTestFixture

@ -1,8 +1,8 @@
using Recyclarr.Config.Parsing;
using Recyclarr.Core.TestLibrary;
using Recyclarr.Platform;
using Recyclarr.TestLibrary;
namespace Recyclarr.IntegrationTests;
namespace Recyclarr.Core.Tests.IntegrationTests;
[TestFixture]
public class ConfigurationLoaderEnvVarTest : IntegrationTestFixture

@ -1,9 +1,9 @@
using System.IO.Abstractions;
using Recyclarr.Config.Parsing;
using Recyclarr.TestLibrary;
using Recyclarr.Core.TestLibrary;
using Recyclarr.TrashGuide;
namespace Recyclarr.IntegrationTests;
namespace Recyclarr.Core.Tests.IntegrationTests;
[TestFixture]
public class ConfigurationLoaderSecretsTest : IntegrationTestFixture

@ -5,11 +5,11 @@ using Autofac;
using FluentValidation;
using Recyclarr.Common.Extensions;
using Recyclarr.Config.Parsing;
using Recyclarr.TestLibrary;
using Recyclarr.Core.TestLibrary;
using Recyclarr.TestLibrary.Autofac;
using Recyclarr.TrashGuide;
namespace Recyclarr.IntegrationTests;
namespace Recyclarr.Core.Tests.IntegrationTests;
[TestFixture]
public class ConfigurationLoaderTest : IntegrationTestFixture

@ -1,9 +1,9 @@
using Recyclarr.Config;
using Recyclarr.Config.Filtering;
using Recyclarr.Config.Parsing.ErrorHandling;
using Recyclarr.TestLibrary;
using Recyclarr.Core.TestLibrary;
namespace Recyclarr.IntegrationTests;
namespace Recyclarr.Core.Tests.IntegrationTests;
[TestFixture]
public class ConfigurationRegistryTest : IntegrationTestFixture

@ -1,12 +1,11 @@
using System.IO.Abstractions;
using System.Text.Json;
using Autofac;
using Recyclarr.TestLibrary;
using Recyclarr.Core.TestLibrary;
using Recyclarr.TestLibrary.Autofac;
using Recyclarr.Tests.TestLibrary;
using Recyclarr.TrashGuide.CustomFormat;
namespace Recyclarr.IntegrationTests;
namespace Recyclarr.Core.Tests.IntegrationTests;
[TestFixture]
public class CustomFormatLoaderIntegrationTest : IntegrationTestFixture

@ -2,11 +2,10 @@ using Flurl.Http.Testing;
using Recyclarr.Common;
using Recyclarr.Config;
using Recyclarr.Config.Models;
using Recyclarr.Core.TestLibrary;
using Recyclarr.ServarrApi.CustomFormat;
using Recyclarr.TestLibrary;
using Recyclarr.Tests.TestLibrary;
namespace Recyclarr.IntegrationTests;
namespace Recyclarr.Core.Tests.IntegrationTests;
[TestFixture]
public class CustomFormatServiceTest : IntegrationTestFixture

@ -2,9 +2,9 @@ using System.IO.Abstractions;
using Recyclarr.Config.Parsing;
using Recyclarr.Config.Parsing.PostProcessing;
using Recyclarr.Config.Parsing.PostProcessing.ConfigMerging;
using Recyclarr.TestLibrary;
using Recyclarr.Core.TestLibrary;
namespace Recyclarr.IntegrationTests;
namespace Recyclarr.Core.Tests.IntegrationTests;
[TestFixture]
public class IncludePostProcessorIntegrationTest : IntegrationTestFixture

@ -1,8 +1,9 @@
using System.IO.Abstractions;
using Recyclarr.Core.TestLibrary;
using Recyclarr.TestLibrary;
using Recyclarr.TrashGuide.QualitySize;
namespace Recyclarr.IntegrationTests;
namespace Recyclarr.Core.Tests.IntegrationTests;
[TestFixture]
public class QualitySizeGuideParserTest : IntegrationTestFixture

@ -1,10 +1,11 @@
using System.IO.Abstractions;
using Recyclarr.Core.TestLibrary;
using Recyclarr.Repo;
using Recyclarr.TestLibrary;
using Recyclarr.TrashGuide;
using Recyclarr.TrashGuide.QualitySize;
namespace Recyclarr.IntegrationTests;
namespace Recyclarr.Core.Tests.IntegrationTests;
[TestFixture]
public class QualitySizeGuideServiceTest : IntegrationTestFixture

@ -1,9 +1,10 @@
using System.IO.Abstractions;
using Recyclarr.Core.TestLibrary;
using Recyclarr.Repo;
using Recyclarr.TestLibrary;
using Recyclarr.TrashGuide.MediaNaming;
namespace Recyclarr.IntegrationTests.TrashGuide;
namespace Recyclarr.Core.Tests.IntegrationTests.TrashGuide;
[TestFixture]
public class MediaNamingGuideServiceTest : IntegrationTestFixture

@ -2,7 +2,7 @@ using System.IO.Abstractions;
using Recyclarr.Json;
using Recyclarr.TestLibrary;
namespace Recyclarr.Tests.Json;
namespace Recyclarr.Core.Tests.Json;
[TestFixture]
public class JsonUtilsTest

@ -2,7 +2,7 @@ using System.IO.Abstractions;
using Recyclarr.Platform;
using IEnvironment = Recyclarr.Platform.IEnvironment;
namespace Recyclarr.Tests.Platform;
namespace Recyclarr.Core.Tests.Platform;
[TestFixture]
public class DefaultAppDataSetupTest

@ -2,13 +2,10 @@
<ItemGroup>
<ProjectReference Include="..\..\src\Recyclarr.Core\Recyclarr.Core.csproj" />
<ProjectReference Include="..\Recyclarr.TestLibrary\Recyclarr.TestLibrary.csproj" />
<ProjectReference Include="..\Recyclarr.Tests.TestLibrary\Recyclarr.Tests.TestLibrary.csproj" />
<ProjectReference Include="..\Recyclarr.Core.TestLibrary\Recyclarr.Core.TestLibrary.csproj" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="Common\DefaultDataFile.txt" />
<EmbeddedResource Include="Common\TestData\DataFile.txt" />
</ItemGroup>
<ItemGroup>
<Folder Include="TrashGuide\MediaNaming\" />
</ItemGroup>
</Project>

@ -1,7 +1,7 @@
using System.IO.Abstractions;
using Recyclarr.Repo;
namespace Recyclarr.Tests.Repo;
namespace Recyclarr.Core.Tests.Repo;
[TestFixture]
public class TrashRepoMetadataBuilderTest

@ -1,6 +1,6 @@
using Recyclarr.TrashGuide;
namespace Recyclarr.Tests.TrashGuide;
namespace Recyclarr.Core.Tests.TrashGuide;
[TestFixture]
public class ConfigTemplateGuideServiceTest

@ -3,7 +3,7 @@ using Recyclarr.Common;
using Recyclarr.Platform;
using Recyclarr.TrashGuide.CustomFormat;
namespace Recyclarr.Tests.TrashGuide.CustomFormat;
namespace Recyclarr.Core.Tests.TrashGuide.CustomFormat;
[TestFixture]
public class CustomFormatCategoryParserTest

@ -1,7 +1,7 @@
using System.Text.Json;
using Recyclarr.TrashGuide.CustomFormat;
namespace Recyclarr.Tests.TrashGuide.CustomFormat;
namespace Recyclarr.Core.Tests.TrashGuide.CustomFormat;
[Parallelizable(ParallelScope.All)]
public class NondeterministicValueConverterTest

@ -1,7 +1,7 @@
using Recyclarr.Tests.TestLibrary;
using Recyclarr.Core.TestLibrary;
using Recyclarr.TrashGuide.QualitySize;
namespace Recyclarr.Tests.TrashGuide.QualitySize;
namespace Recyclarr.Core.Tests.TrashGuide.QualitySize;
[TestFixture]
public class QualityItemWithLimitsTest

@ -1,7 +1,7 @@
using Recyclarr.Repo;
using Recyclarr.Settings;
namespace Recyclarr.Tests.VersionControl;
namespace Recyclarr.Core.Tests.VersionControl;
[TestFixture]
public class GitPathTest

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

Loading…
Cancel
Save