diff --git a/src/Directory.Packages.props b/src/Directory.Packages.props index 798ba8b6..134e06b9 100644 --- a/src/Directory.Packages.props +++ b/src/Directory.Packages.props @@ -7,7 +7,6 @@ - diff --git a/src/Recyclarr.Cli/Cache/ServiceCache.cs b/src/Recyclarr.Cli/Cache/ServiceCache.cs index ea48b533..adc8055f 100644 --- a/src/Recyclarr.Cli/Cache/ServiceCache.cs +++ b/src/Recyclarr.Cli/Cache/ServiceCache.cs @@ -2,10 +2,10 @@ using System.IO.Abstractions; using System.Reflection; using System.Text.Json; using System.Text.RegularExpressions; +using Recyclarr.Cli.Console.Helpers; using Recyclarr.Common.Extensions; using Recyclarr.Config.Models; using Recyclarr.Json; -using Recyclarr.TrashLib.Interfaces; namespace Recyclarr.Cli.Cache; diff --git a/src/Recyclarr.Cli/CompositionRoot.cs b/src/Recyclarr.Cli/CompositionRoot.cs index ba7207c4..a36e8ed7 100644 --- a/src/Recyclarr.Cli/CompositionRoot.cs +++ b/src/Recyclarr.Cli/CompositionRoot.cs @@ -3,7 +3,6 @@ using System.Reflection; using Autofac; using Autofac.Extras.Ordering; using AutoMapper.Contrib.Autofac.DependencyInjection; -using AutoMapper.EquivalencyExpression; using Recyclarr.Cli.Cache; using Recyclarr.Cli.Console.Helpers; using Recyclarr.Cli.Console.Setup; @@ -17,11 +16,15 @@ using Recyclarr.Cli.Pipelines.ReleaseProfile; using Recyclarr.Cli.Pipelines.Tags; using Recyclarr.Cli.Processors; using Recyclarr.Common; -using Recyclarr.Platform; -using Recyclarr.TrashLib; +using Recyclarr.Compatibility; using Recyclarr.Config; +using Recyclarr.Json; +using Recyclarr.Platform; +using Recyclarr.Repo; +using Recyclarr.ServarrApi; +using Recyclarr.Settings; using Recyclarr.TrashGuide; -using Recyclarr.TrashLib.Interfaces; +using Recyclarr.VersionControl; using Recyclarr.Yaml; using Serilog.Core; using Spectre.Console.Cli; @@ -34,21 +37,31 @@ public static class CompositionRoot { var thisAssembly = typeof(CompositionRoot).Assembly; + // Needed for Autofac.Extras.Ordering + builder.RegisterSource(); + RegisterLogger(builder); builder.RegisterModule(); - builder.RegisterModule(); builder.RegisterModule(); builder.RegisterModule(); builder.RegisterModule(); builder.RegisterModule(); builder.RegisterModule(); + builder.RegisterModule(); + builder.RegisterModule(); + builder.RegisterModule(); + builder.RegisterModule(); + builder.RegisterModule(); + builder.RegisterModule(); + builder.RegisterModule(); + builder.RegisterModule(); builder.RegisterType().As(); builder.RegisterType().As(); builder.Register(_ => new ResourceDataReader(thisAssembly)).As(); - builder.RegisterAutoMapper(c => c.AddCollectionMappers(), thisAssembly); + builder.RegisterAutoMapper(thisAssembly); CommandRegistrations(builder); PipelineRegistrations(builder); diff --git a/src/Recyclarr.TrashLib/ExceptionTypes/CommandException.cs b/src/Recyclarr.Cli/Console/CommandException.cs similarity index 73% rename from src/Recyclarr.TrashLib/ExceptionTypes/CommandException.cs rename to src/Recyclarr.Cli/Console/CommandException.cs index 17ecf58e..5033752e 100644 --- a/src/Recyclarr.TrashLib/ExceptionTypes/CommandException.cs +++ b/src/Recyclarr.Cli/Console/CommandException.cs @@ -1,4 +1,4 @@ -namespace Recyclarr.TrashLib.ExceptionTypes; +namespace Recyclarr.Cli.Console; public class CommandException : Exception { diff --git a/src/Recyclarr.Cli/Console/Commands/ConfigCreateCommand.cs b/src/Recyclarr.Cli/Console/Commands/ConfigCreateCommand.cs index ac6148a7..00059cab 100644 --- a/src/Recyclarr.Cli/Console/Commands/ConfigCreateCommand.cs +++ b/src/Recyclarr.Cli/Console/Commands/ConfigCreateCommand.cs @@ -4,7 +4,6 @@ using JetBrains.Annotations; using Recyclarr.Cli.Console.Settings; using Recyclarr.Cli.Processors.Config; using Recyclarr.Repo; -using Recyclarr.TrashLib.ExceptionTypes; using Spectre.Console.Cli; namespace Recyclarr.Cli.Console.Commands; diff --git a/src/Recyclarr.Cli/Console/Helpers/CacheStoragePath.cs b/src/Recyclarr.Cli/Console/Helpers/CacheStoragePath.cs index 0615d44f..c88e5fc6 100644 --- a/src/Recyclarr.Cli/Console/Helpers/CacheStoragePath.cs +++ b/src/Recyclarr.Cli/Console/Helpers/CacheStoragePath.cs @@ -4,7 +4,6 @@ using System.IO.Abstractions; using System.Text; using Recyclarr.Config.Models; using Recyclarr.Platform; -using Recyclarr.TrashLib.Interfaces; namespace Recyclarr.Cli.Console.Helpers; diff --git a/src/Recyclarr.TrashLib/Interfaces/ICacheStoragePath.cs b/src/Recyclarr.Cli/Console/Helpers/ICacheStoragePath.cs similarity index 81% rename from src/Recyclarr.TrashLib/Interfaces/ICacheStoragePath.cs rename to src/Recyclarr.Cli/Console/Helpers/ICacheStoragePath.cs index 716e4d5f..87ad3a62 100644 --- a/src/Recyclarr.TrashLib/Interfaces/ICacheStoragePath.cs +++ b/src/Recyclarr.Cli/Console/Helpers/ICacheStoragePath.cs @@ -1,7 +1,7 @@ using System.IO.Abstractions; using Recyclarr.Config.Models; -namespace Recyclarr.TrashLib.Interfaces; +namespace Recyclarr.Cli.Console.Helpers; public interface ICacheStoragePath { diff --git a/src/Recyclarr.Cli/Processors/Config/ConfigCreationProcessor.cs b/src/Recyclarr.Cli/Processors/Config/ConfigCreationProcessor.cs index 85f619cd..e44b8bad 100644 --- a/src/Recyclarr.Cli/Processors/Config/ConfigCreationProcessor.cs +++ b/src/Recyclarr.Cli/Processors/Config/ConfigCreationProcessor.cs @@ -1,5 +1,4 @@ using Recyclarr.Cli.Console.Settings; -using Recyclarr.TrashLib.ExceptionTypes; namespace Recyclarr.Cli.Processors.Config; diff --git a/src/Recyclarr.TrashLib/ExceptionTypes/FileExistsException.cs b/src/Recyclarr.Cli/Processors/Config/FileExistsException.cs similarity index 81% rename from src/Recyclarr.TrashLib/ExceptionTypes/FileExistsException.cs rename to src/Recyclarr.Cli/Processors/Config/FileExistsException.cs index 28a0acd9..0ffdca30 100644 --- a/src/Recyclarr.TrashLib/ExceptionTypes/FileExistsException.cs +++ b/src/Recyclarr.Cli/Processors/Config/FileExistsException.cs @@ -1,4 +1,4 @@ -namespace Recyclarr.TrashLib.ExceptionTypes; +namespace Recyclarr.Cli.Processors.Config; public class FileExistsException : Exception { diff --git a/src/Recyclarr.Cli/Processors/Config/LocalConfigCreator.cs b/src/Recyclarr.Cli/Processors/Config/LocalConfigCreator.cs index 88ca8bad..e5c01094 100644 --- a/src/Recyclarr.Cli/Processors/Config/LocalConfigCreator.cs +++ b/src/Recyclarr.Cli/Processors/Config/LocalConfigCreator.cs @@ -3,7 +3,6 @@ using Recyclarr.Cli.Console.Settings; using Recyclarr.Common; using Recyclarr.Common.Extensions; using Recyclarr.Platform; -using Recyclarr.TrashLib.ExceptionTypes; namespace Recyclarr.Cli.Processors.Config; diff --git a/src/Recyclarr.Cli/Processors/Config/TemplateConfigCreator.cs b/src/Recyclarr.Cli/Processors/Config/TemplateConfigCreator.cs index d4948ae8..740b3435 100644 --- a/src/Recyclarr.Cli/Processors/Config/TemplateConfigCreator.cs +++ b/src/Recyclarr.Cli/Processors/Config/TemplateConfigCreator.cs @@ -2,7 +2,6 @@ using System.IO.Abstractions; using Recyclarr.Cli.Console.Settings; using Recyclarr.Common.Extensions; using Recyclarr.Platform; -using Recyclarr.TrashLib.ExceptionTypes; using Recyclarr.TrashGuide; namespace Recyclarr.Cli.Processors.Config; diff --git a/src/Recyclarr.Cli/Processors/Delete/DeleteCustomFormatsProcessor.cs b/src/Recyclarr.Cli/Processors/Delete/DeleteCustomFormatsProcessor.cs index 2983c6b7..f90b3bc9 100644 --- a/src/Recyclarr.Cli/Processors/Delete/DeleteCustomFormatsProcessor.cs +++ b/src/Recyclarr.Cli/Processors/Delete/DeleteCustomFormatsProcessor.cs @@ -1,10 +1,11 @@ using System.Diagnostics.CodeAnalysis; +using Recyclarr.Cli.Console; using Recyclarr.Cli.Console.Settings; -using Recyclarr.TrashLib.Compatibility.Sonarr; +using Recyclarr.Compatibility; +using Recyclarr.Compatibility.Sonarr; using Recyclarr.Config; using Recyclarr.Config.Models; using Recyclarr.ServarrApi.Services; -using Recyclarr.TrashLib.ExceptionTypes; using Recyclarr.TrashGuide.CustomFormat; using Spectre.Console; diff --git a/src/Recyclarr.Cli/Processors/ErrorHandling/ConsoleExceptionHandler.cs b/src/Recyclarr.Cli/Processors/ErrorHandling/ConsoleExceptionHandler.cs index 81bca192..69699b5b 100644 --- a/src/Recyclarr.Cli/Processors/ErrorHandling/ConsoleExceptionHandler.cs +++ b/src/Recyclarr.Cli/Processors/ErrorHandling/ConsoleExceptionHandler.cs @@ -1,8 +1,8 @@ using Flurl.Http; +using Recyclarr.Cli.Console; using Recyclarr.Config.ExceptionTypes; using Recyclarr.Config.Parsing.ErrorHandling; using Recyclarr.ServarrApi.Http; -using Recyclarr.TrashLib.ExceptionTypes; using Recyclarr.VersionControl; namespace Recyclarr.Cli.Processors.ErrorHandling; diff --git a/src/Recyclarr.TrashLib/ExceptionTypes/FatalException.cs b/src/Recyclarr.Cli/Processors/FatalException.cs similarity index 88% rename from src/Recyclarr.TrashLib/ExceptionTypes/FatalException.cs rename to src/Recyclarr.Cli/Processors/FatalException.cs index 6b328496..3d249846 100644 --- a/src/Recyclarr.TrashLib/ExceptionTypes/FatalException.cs +++ b/src/Recyclarr.Cli/Processors/FatalException.cs @@ -1,7 +1,7 @@ using System.Runtime.Serialization; using JetBrains.Annotations; -namespace Recyclarr.TrashLib.ExceptionTypes; +namespace Recyclarr.Cli.Processors; [Serializable] public class FatalException : Exception diff --git a/src/Recyclarr.Cli/Processors/Sync/SyncProcessor.cs b/src/Recyclarr.Cli/Processors/Sync/SyncProcessor.cs index c56ed637..c8cd6a02 100644 --- a/src/Recyclarr.Cli/Processors/Sync/SyncProcessor.cs +++ b/src/Recyclarr.Cli/Processors/Sync/SyncProcessor.cs @@ -2,7 +2,7 @@ using System.Diagnostics.CodeAnalysis; using Recyclarr.Cli.Console.Settings; using Recyclarr.Cli.Processors.ErrorHandling; using Recyclarr.Common; -using Recyclarr.TrashLib.Compatibility; +using Recyclarr.Compatibility; using Recyclarr.Config; using Recyclarr.Config.Models; using Spectre.Console; diff --git a/src/Recyclarr.Cli/Recyclarr.Cli.csproj b/src/Recyclarr.Cli/Recyclarr.Cli.csproj index 6cdedf65..5db8a5ca 100644 --- a/src/Recyclarr.Cli/Recyclarr.Cli.csproj +++ b/src/Recyclarr.Cli/Recyclarr.Cli.csproj @@ -31,9 +31,9 @@ + - diff --git a/src/Recyclarr.Common/CommonAutofacModule.cs b/src/Recyclarr.Common/CommonAutofacModule.cs new file mode 100644 index 00000000..75da07ba --- /dev/null +++ b/src/Recyclarr.Common/CommonAutofacModule.cs @@ -0,0 +1,14 @@ +using Autofac; +using Recyclarr.Common.FluentValidation; + +namespace Recyclarr.Common; + +public class CommonAutofacModule : Module +{ + protected override void Load(ContainerBuilder builder) + { + base.Load(builder); + builder.RegisterType().As(); + builder.RegisterType().As(); + } +} diff --git a/src/Recyclarr.TrashLib/Compatibility/CompatibilityAutofacModule.cs b/src/Recyclarr.Compatibility/CompatibilityAutofacModule.cs similarity index 83% rename from src/Recyclarr.TrashLib/Compatibility/CompatibilityAutofacModule.cs rename to src/Recyclarr.Compatibility/CompatibilityAutofacModule.cs index f7dbd2a7..b33132c2 100644 --- a/src/Recyclarr.TrashLib/Compatibility/CompatibilityAutofacModule.cs +++ b/src/Recyclarr.Compatibility/CompatibilityAutofacModule.cs @@ -1,8 +1,8 @@ using Autofac; -using Recyclarr.TrashLib.Compatibility.Radarr; -using Recyclarr.TrashLib.Compatibility.Sonarr; +using Recyclarr.Compatibility.Radarr; +using Recyclarr.Compatibility.Sonarr; -namespace Recyclarr.TrashLib.Compatibility; +namespace Recyclarr.Compatibility; public class CompatibilityAutofacModule : Module { diff --git a/src/Recyclarr.TrashLib/Compatibility/IServiceInformation.cs b/src/Recyclarr.Compatibility/IServiceInformation.cs similarity index 76% rename from src/Recyclarr.TrashLib/Compatibility/IServiceInformation.cs rename to src/Recyclarr.Compatibility/IServiceInformation.cs index ee1e6a6d..f061dd67 100644 --- a/src/Recyclarr.TrashLib/Compatibility/IServiceInformation.cs +++ b/src/Recyclarr.Compatibility/IServiceInformation.cs @@ -1,6 +1,6 @@ using Recyclarr.Config.Models; -namespace Recyclarr.TrashLib.Compatibility; +namespace Recyclarr.Compatibility; public interface IServiceInformation { diff --git a/src/Recyclarr.TrashLib/Compatibility/Radarr/IRadarrCapabilityFetcher.cs b/src/Recyclarr.Compatibility/Radarr/IRadarrCapabilityFetcher.cs similarity index 75% rename from src/Recyclarr.TrashLib/Compatibility/Radarr/IRadarrCapabilityFetcher.cs rename to src/Recyclarr.Compatibility/Radarr/IRadarrCapabilityFetcher.cs index ab509f13..30956d15 100644 --- a/src/Recyclarr.TrashLib/Compatibility/Radarr/IRadarrCapabilityFetcher.cs +++ b/src/Recyclarr.Compatibility/Radarr/IRadarrCapabilityFetcher.cs @@ -1,6 +1,6 @@ using Recyclarr.Config.Models; -namespace Recyclarr.TrashLib.Compatibility.Radarr; +namespace Recyclarr.Compatibility.Radarr; public interface IRadarrCapabilityFetcher { diff --git a/src/Recyclarr.TrashLib/Compatibility/Radarr/RadarrCapabilities.cs b/src/Recyclarr.Compatibility/Radarr/RadarrCapabilities.cs similarity index 85% rename from src/Recyclarr.TrashLib/Compatibility/Radarr/RadarrCapabilities.cs rename to src/Recyclarr.Compatibility/Radarr/RadarrCapabilities.cs index d256dbb4..e2f1bf79 100644 --- a/src/Recyclarr.TrashLib/Compatibility/Radarr/RadarrCapabilities.cs +++ b/src/Recyclarr.Compatibility/Radarr/RadarrCapabilities.cs @@ -1,4 +1,4 @@ -namespace Recyclarr.TrashLib.Compatibility.Radarr; +namespace Recyclarr.Compatibility.Radarr; // ReSharper disable once NotAccessedPositionalProperty.Global // diff --git a/src/Recyclarr.TrashLib/Compatibility/Radarr/RadarrCapabilityEnforcer.cs b/src/Recyclarr.Compatibility/Radarr/RadarrCapabilityEnforcer.cs similarity index 90% rename from src/Recyclarr.TrashLib/Compatibility/Radarr/RadarrCapabilityEnforcer.cs rename to src/Recyclarr.Compatibility/Radarr/RadarrCapabilityEnforcer.cs index de395506..817030c1 100644 --- a/src/Recyclarr.TrashLib/Compatibility/Radarr/RadarrCapabilityEnforcer.cs +++ b/src/Recyclarr.Compatibility/Radarr/RadarrCapabilityEnforcer.cs @@ -1,6 +1,6 @@ using Recyclarr.Config.Models; -namespace Recyclarr.TrashLib.Compatibility.Radarr; +namespace Recyclarr.Compatibility.Radarr; public class RadarrCapabilityEnforcer { diff --git a/src/Recyclarr.TrashLib/Compatibility/Radarr/RadarrCapabilityFetcher.cs b/src/Recyclarr.Compatibility/Radarr/RadarrCapabilityFetcher.cs similarity index 87% rename from src/Recyclarr.TrashLib/Compatibility/Radarr/RadarrCapabilityFetcher.cs rename to src/Recyclarr.Compatibility/Radarr/RadarrCapabilityFetcher.cs index 4138a3a8..d9ec1a4a 100644 --- a/src/Recyclarr.TrashLib/Compatibility/Radarr/RadarrCapabilityFetcher.cs +++ b/src/Recyclarr.Compatibility/Radarr/RadarrCapabilityFetcher.cs @@ -1,4 +1,4 @@ -namespace Recyclarr.TrashLib.Compatibility.Radarr; +namespace Recyclarr.Compatibility.Radarr; public class RadarrCapabilityFetcher : ServiceCapabilityFetcher, IRadarrCapabilityFetcher { diff --git a/src/Recyclarr.TrashLib/Recyclarr.TrashLib.csproj b/src/Recyclarr.Compatibility/Recyclarr.Compatibility.csproj similarity index 69% rename from src/Recyclarr.TrashLib/Recyclarr.TrashLib.csproj rename to src/Recyclarr.Compatibility/Recyclarr.Compatibility.csproj index b9908d2e..0081af82 100644 --- a/src/Recyclarr.TrashLib/Recyclarr.TrashLib.csproj +++ b/src/Recyclarr.Compatibility/Recyclarr.Compatibility.csproj @@ -1,10 +1,9 @@ - - + - - + + diff --git a/src/Recyclarr.TrashLib/Compatibility/ServiceAgnosticCapabilityEnforcer.cs b/src/Recyclarr.Compatibility/ServiceAgnosticCapabilityEnforcer.cs similarity index 85% rename from src/Recyclarr.TrashLib/Compatibility/ServiceAgnosticCapabilityEnforcer.cs rename to src/Recyclarr.Compatibility/ServiceAgnosticCapabilityEnforcer.cs index 3a749efd..2fb398d2 100644 --- a/src/Recyclarr.TrashLib/Compatibility/ServiceAgnosticCapabilityEnforcer.cs +++ b/src/Recyclarr.Compatibility/ServiceAgnosticCapabilityEnforcer.cs @@ -1,8 +1,8 @@ +using Recyclarr.Compatibility.Radarr; +using Recyclarr.Compatibility.Sonarr; using Recyclarr.Config.Models; -using Recyclarr.TrashLib.Compatibility.Radarr; -using Recyclarr.TrashLib.Compatibility.Sonarr; -namespace Recyclarr.TrashLib.Compatibility; +namespace Recyclarr.Compatibility; public class ServiceAgnosticCapabilityEnforcer { diff --git a/src/Recyclarr.TrashLib/Compatibility/ServiceCapabilityFetcher.cs b/src/Recyclarr.Compatibility/ServiceCapabilityFetcher.cs similarity index 92% rename from src/Recyclarr.TrashLib/Compatibility/ServiceCapabilityFetcher.cs rename to src/Recyclarr.Compatibility/ServiceCapabilityFetcher.cs index 073856ec..40674c6a 100644 --- a/src/Recyclarr.TrashLib/Compatibility/ServiceCapabilityFetcher.cs +++ b/src/Recyclarr.Compatibility/ServiceCapabilityFetcher.cs @@ -1,6 +1,6 @@ using Recyclarr.Config.Models; -namespace Recyclarr.TrashLib.Compatibility; +namespace Recyclarr.Compatibility; public abstract class ServiceCapabilityFetcher where T : class { diff --git a/src/Recyclarr.TrashLib/ExceptionTypes/ServiceIncompatibilityException.cs b/src/Recyclarr.Compatibility/ServiceIncompatibilityException.cs similarity index 76% rename from src/Recyclarr.TrashLib/ExceptionTypes/ServiceIncompatibilityException.cs rename to src/Recyclarr.Compatibility/ServiceIncompatibilityException.cs index b7e47b5b..f5da1fff 100644 --- a/src/Recyclarr.TrashLib/ExceptionTypes/ServiceIncompatibilityException.cs +++ b/src/Recyclarr.Compatibility/ServiceIncompatibilityException.cs @@ -1,4 +1,4 @@ -namespace Recyclarr.TrashLib.ExceptionTypes; +namespace Recyclarr.Compatibility; public class ServiceIncompatibilityException : Exception { diff --git a/src/Recyclarr.TrashLib/Compatibility/ServiceInformation.cs b/src/Recyclarr.Compatibility/ServiceInformation.cs similarity index 94% rename from src/Recyclarr.TrashLib/Compatibility/ServiceInformation.cs rename to src/Recyclarr.Compatibility/ServiceInformation.cs index e154c68b..bde6c815 100644 --- a/src/Recyclarr.TrashLib/Compatibility/ServiceInformation.cs +++ b/src/Recyclarr.Compatibility/ServiceInformation.cs @@ -1,8 +1,9 @@ using Flurl.Http; using Recyclarr.Config.Models; using Recyclarr.ServarrApi.Services; +using Serilog; -namespace Recyclarr.TrashLib.Compatibility; +namespace Recyclarr.Compatibility; public class ServiceInformation : IServiceInformation { diff --git a/src/Recyclarr.TrashLib/Compatibility/Sonarr/ISonarrCapabilityFetcher.cs b/src/Recyclarr.Compatibility/Sonarr/ISonarrCapabilityFetcher.cs similarity index 75% rename from src/Recyclarr.TrashLib/Compatibility/Sonarr/ISonarrCapabilityFetcher.cs rename to src/Recyclarr.Compatibility/Sonarr/ISonarrCapabilityFetcher.cs index e1dff6f9..b893172e 100644 --- a/src/Recyclarr.TrashLib/Compatibility/Sonarr/ISonarrCapabilityFetcher.cs +++ b/src/Recyclarr.Compatibility/Sonarr/ISonarrCapabilityFetcher.cs @@ -1,6 +1,6 @@ using Recyclarr.Config.Models; -namespace Recyclarr.TrashLib.Compatibility.Sonarr; +namespace Recyclarr.Compatibility.Sonarr; public interface ISonarrCapabilityFetcher { diff --git a/src/Recyclarr.TrashLib/Compatibility/Sonarr/SonarrCapabilities.cs b/src/Recyclarr.Compatibility/Sonarr/SonarrCapabilities.cs similarity index 80% rename from src/Recyclarr.TrashLib/Compatibility/Sonarr/SonarrCapabilities.cs rename to src/Recyclarr.Compatibility/Sonarr/SonarrCapabilities.cs index 6d79ac10..a05ff859 100644 --- a/src/Recyclarr.TrashLib/Compatibility/Sonarr/SonarrCapabilities.cs +++ b/src/Recyclarr.Compatibility/Sonarr/SonarrCapabilities.cs @@ -1,4 +1,4 @@ -namespace Recyclarr.TrashLib.Compatibility.Sonarr; +namespace Recyclarr.Compatibility.Sonarr; public record SonarrCapabilities { diff --git a/src/Recyclarr.TrashLib/Compatibility/Sonarr/SonarrCapabilityEnforcer.cs b/src/Recyclarr.Compatibility/Sonarr/SonarrCapabilityEnforcer.cs similarity index 96% rename from src/Recyclarr.TrashLib/Compatibility/Sonarr/SonarrCapabilityEnforcer.cs rename to src/Recyclarr.Compatibility/Sonarr/SonarrCapabilityEnforcer.cs index 53827576..c0b42158 100644 --- a/src/Recyclarr.TrashLib/Compatibility/Sonarr/SonarrCapabilityEnforcer.cs +++ b/src/Recyclarr.Compatibility/Sonarr/SonarrCapabilityEnforcer.cs @@ -1,8 +1,7 @@ using Recyclarr.Common.Extensions; using Recyclarr.Config.Models; -using Recyclarr.TrashLib.ExceptionTypes; -namespace Recyclarr.TrashLib.Compatibility.Sonarr; +namespace Recyclarr.Compatibility.Sonarr; public class SonarrCapabilityEnforcer { diff --git a/src/Recyclarr.TrashLib/Compatibility/Sonarr/SonarrCapabilityFetcher.cs b/src/Recyclarr.Compatibility/Sonarr/SonarrCapabilityFetcher.cs similarity index 90% rename from src/Recyclarr.TrashLib/Compatibility/Sonarr/SonarrCapabilityFetcher.cs rename to src/Recyclarr.Compatibility/Sonarr/SonarrCapabilityFetcher.cs index 19b849c9..5d086150 100644 --- a/src/Recyclarr.TrashLib/Compatibility/Sonarr/SonarrCapabilityFetcher.cs +++ b/src/Recyclarr.Compatibility/Sonarr/SonarrCapabilityFetcher.cs @@ -1,4 +1,4 @@ -namespace Recyclarr.TrashLib.Compatibility.Sonarr; +namespace Recyclarr.Compatibility.Sonarr; public class SonarrCapabilityFetcher : ServiceCapabilityFetcher, ISonarrCapabilityFetcher { diff --git a/src/Recyclarr.Config/ConfigAutofacModule.cs b/src/Recyclarr.Config/ConfigAutofacModule.cs index 46019953..663451ed 100644 --- a/src/Recyclarr.Config/ConfigAutofacModule.cs +++ b/src/Recyclarr.Config/ConfigAutofacModule.cs @@ -1,6 +1,5 @@ using Autofac; using AutoMapper.Contrib.Autofac.DependencyInjection; -using AutoMapper.EquivalencyExpression; using FluentValidation; using Recyclarr.Config.Parsing; using Recyclarr.Config.Parsing.PostProcessing; @@ -14,7 +13,7 @@ public class ConfigAutofacModule : Module { protected override void Load(ContainerBuilder builder) { - builder.RegisterAutoMapper(c => c.AddCollectionMappers(), ThisAssembly); + builder.RegisterAutoMapper(ThisAssembly); builder.RegisterAssemblyTypes(ThisAssembly) .AssignableTo() diff --git a/src/Recyclarr.TrashLib/ExceptionTypes/PostProcessingException.cs b/src/Recyclarr.Config/Parsing/ErrorHandling/PostProcessingException.cs similarity index 73% rename from src/Recyclarr.TrashLib/ExceptionTypes/PostProcessingException.cs rename to src/Recyclarr.Config/Parsing/ErrorHandling/PostProcessingException.cs index 28cccb30..ff84a4ce 100644 --- a/src/Recyclarr.TrashLib/ExceptionTypes/PostProcessingException.cs +++ b/src/Recyclarr.Config/Parsing/ErrorHandling/PostProcessingException.cs @@ -1,4 +1,4 @@ -namespace Recyclarr.TrashLib.ExceptionTypes; +namespace Recyclarr.Config.Parsing.ErrorHandling; public class PostProcessingException : Exception { diff --git a/src/Recyclarr.Config/Recyclarr.Config.csproj b/src/Recyclarr.Config/Recyclarr.Config.csproj index 2071154c..73781afe 100644 --- a/src/Recyclarr.Config/Recyclarr.Config.csproj +++ b/src/Recyclarr.Config/Recyclarr.Config.csproj @@ -2,7 +2,6 @@ - diff --git a/src/Recyclarr.Platform/PlatformAutofacModule.cs b/src/Recyclarr.Platform/PlatformAutofacModule.cs new file mode 100644 index 00000000..dbe56c17 --- /dev/null +++ b/src/Recyclarr.Platform/PlatformAutofacModule.cs @@ -0,0 +1,26 @@ +using Autofac; + +namespace Recyclarr.Platform; + +public class PlatformAutofacModule : Module +{ + protected override void Load(ContainerBuilder builder) + { + base.Load(builder); + RegisterAppPaths(builder); + } + + private static void RegisterAppPaths(ContainerBuilder builder) + { + builder.RegisterType(); + + builder.Register(c => + { + var appData = c.Resolve(); + var dataSetup = c.Resolve(); + return dataSetup.CreateAppPaths(appData.AppDataPath); + }) + .As() + .SingleInstance(); + } +} diff --git a/src/Recyclarr.Settings/SettingsAutofacModule.cs b/src/Recyclarr.Settings/SettingsAutofacModule.cs new file mode 100644 index 00000000..93a4afdd --- /dev/null +++ b/src/Recyclarr.Settings/SettingsAutofacModule.cs @@ -0,0 +1,12 @@ +using Autofac; + +namespace Recyclarr.Settings; + +public class SettingsAutofacModule : Module +{ + protected override void Load(ContainerBuilder builder) + { + base.Load(builder); + builder.RegisterType().As().SingleInstance(); + } +} diff --git a/src/Recyclarr.TrashLib/ExceptionTypes/VersionException.cs b/src/Recyclarr.TrashLib/ExceptionTypes/VersionException.cs deleted file mode 100644 index d24f0acb..00000000 --- a/src/Recyclarr.TrashLib/ExceptionTypes/VersionException.cs +++ /dev/null @@ -1,17 +0,0 @@ -using System.Runtime.Serialization; - -namespace Recyclarr.TrashLib.ExceptionTypes; - -[Serializable] -public class VersionException : Exception -{ - public VersionException(string msg) - : base(msg) - { - } - - protected VersionException(SerializationInfo info, StreamingContext context) - : base(info, context) - { - } -} diff --git a/src/Recyclarr.TrashLib/GlobalUsings.cs b/src/Recyclarr.TrashLib/GlobalUsings.cs deleted file mode 100644 index 1e3063b8..00000000 --- a/src/Recyclarr.TrashLib/GlobalUsings.cs +++ /dev/null @@ -1,2 +0,0 @@ -global using SuperLinq; -global using Serilog; diff --git a/src/Recyclarr.TrashLib/TrashLibAutofacModule.cs b/src/Recyclarr.TrashLib/TrashLibAutofacModule.cs deleted file mode 100644 index bd616412..00000000 --- a/src/Recyclarr.TrashLib/TrashLibAutofacModule.cs +++ /dev/null @@ -1,55 +0,0 @@ -using Autofac; -using Autofac.Extras.Ordering; -using Recyclarr.Common; -using Recyclarr.Common.FluentValidation; -using Recyclarr.Json; -using Recyclarr.Platform; -using Recyclarr.Repo; -using Recyclarr.ServarrApi; -using Recyclarr.Settings; -using Recyclarr.TrashLib.Compatibility; -using Recyclarr.VersionControl; - -namespace Recyclarr.TrashLib; - -public class TrashLibAutofacModule : Module -{ - protected override void Load(ContainerBuilder builder) - { - base.Load(builder); - - RegisterAppPaths(builder); - CommonRegistrations(builder); - - // Needed for Autofac.Extras.Ordering - builder.RegisterSource(); - - builder.RegisterModule(); - builder.RegisterModule(); - builder.RegisterModule(); - builder.RegisterModule(); - builder.RegisterModule(); - - builder.RegisterType().As().SingleInstance(); - } - - private static void CommonRegistrations(ContainerBuilder builder) - { - builder.RegisterType().As(); - builder.RegisterType().As(); - } - - private static void RegisterAppPaths(ContainerBuilder builder) - { - builder.RegisterType(); - - builder.Register(c => - { - var appData = c.Resolve(); - var dataSetup = c.Resolve(); - return dataSetup.CreateAppPaths(appData.AppDataPath); - }) - .As() - .SingleInstance(); - } -} diff --git a/src/Recyclarr.sln b/src/Recyclarr.sln index a1cb5d4f..3f78dd20 100644 --- a/src/Recyclarr.sln +++ b/src/Recyclarr.sln @@ -5,12 +5,8 @@ VisualStudioVersion = 17.3.32825.248 MinimumVisualStudioVersion = 10.0.40219.1 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Recyclarr.Cli", "Recyclarr.Cli\Recyclarr.Cli.csproj", "{CD5C6F99-C587-4B7C-86AE-550FA4A5594A}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Recyclarr.Cli.Tests", "tests\Recyclarr.Cli.Tests\Recyclarr.Cli.Tests.csproj", "{217D5972-4BB7-4343-9043-C30BD9A1811E}" -EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Recyclarr.TestLibrary", "tests\Recyclarr.TestLibrary\Recyclarr.TestLibrary.csproj", "{49F28A82-468F-4C48-9A59-D41B8FE26D6E}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Recyclarr.TestLibrary.Tests", "tests\Recyclarr.TestLibrary.Tests\Recyclarr.TestLibrary.Tests.csproj", "{BF105B2F-8E13-48AD-BF72-DF7EFEB018B6}" -EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Props", "Props", "{305C2AC5-803F-41B3-92D8-4AD2B2E3E130}" ProjectSection(SolutionItems) = preProject .editorconfig = ..\.editorconfig @@ -21,20 +17,10 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Props", "Props", "{305C2AC5 EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Recyclarr.Common", "Recyclarr.Common\Recyclarr.Common.csproj", "{18CF1FCA-7983-4423-8B7E-4A830108C624}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Recyclarr.Common.Tests", "tests\Recyclarr.Common.Tests\Recyclarr.Common.Tests.csproj", "{0720939D-1CA6-43D7-BBED-F8F894C4F562}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Recyclarr.TrashLib.TestLibrary", "tests\Recyclarr.TrashLib.TestLibrary\Recyclarr.TrashLib.TestLibrary.csproj", "{33226068-65E3-4890-8671-59A56BA3F6F0}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Recyclarr.TrashLib", "Recyclarr.TrashLib\Recyclarr.TrashLib.csproj", "{4F6ACBA6-9A7D-487C-ACC1-787CCC90A381}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Recyclarr.TrashLib.Tests", "tests\Recyclarr.TrashLib.Tests\Recyclarr.TrashLib.Tests.csproj", "{A4EC7E0D-C591-4874-B9AC-EB12A96F3E83}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Recyclarr.Cli.TestLibrary", "tests\Recyclarr.Cli.TestLibrary\Recyclarr.Cli.TestLibrary.csproj", "{77D1C695-94D4-46A9-8F12-41E54AF97750}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Recyclarr.Tests", "tests\Recyclarr.Tests\Recyclarr.Tests.csproj", "{A4EC7E0D-C591-4874-B9AC-EB12A96F3E83}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Recyclarr.Gui", "Recyclarr.Gui\Recyclarr.Gui.csproj", "{53EECBC0-E0EA-4D6C-925C-5DB8C42CCB85}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Recyclarr.Common.TestLibrary", "tests\Recyclarr.Common.TestLibrary\Recyclarr.Common.TestLibrary.csproj", "{A92321B5-2796-467B-B5A5-2BFC41167A25}" -EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{18E17C53-F600-40AE-82C1-3CD1E547C307}" ProjectSection(SolutionItems) = preProject tests\Directory.Build.props = tests\Directory.Build.props @@ -46,20 +32,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.Yaml", "Recyclarr EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.TrashGuide", "Recyclarr.TrashGuide\Recyclarr.TrashGuide.csproj", "{37220364-7C1E-4561-A369-C32BA195A0C3}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.TrashGuide.Tests", "tests\Recyclarr.TrashGuide.Tests\Recyclarr.TrashGuide.Tests.csproj", "{0E5C6E86-F899-4743-8DCF-7812E717C604}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.Config.Tests", "tests\Recyclarr.Config.Tests\Recyclarr.Config.Tests.csproj", "{2B4CAFB7-02D7-4909-98C4-7393C1366C39}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.Config.TestLibrary", "tests\Recyclarr.Config.TestLibrary\Recyclarr.Config.TestLibrary.csproj", "{533299C5-71A9-4461-90BB-05C3404F2143}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.TrashGuide.TestLibrary", "tests\Recyclarr.TrashGuide.TestLibrary\Recyclarr.TrashGuide.TestLibrary.csproj", "{B3FC265C-36EF-4815-9EB1-CB878FBEE6D6}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.Json", "Recyclarr.Json\Recyclarr.Json.csproj", "{A9E2F11E-73F8-48CC-8770-0AFD41E80141}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.Json.Tests", "tests\Recyclarr.Json.Tests\Recyclarr.Json.Tests.csproj", "{737A1B22-F3A5-4920-AED7-77E756D14113}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.Json.TestLibrary", "tests\Recyclarr.Json.TestLibrary\Recyclarr.Json.TestLibrary.csproj", "{59B75C08-F144-4190-A7D0-C027044147D2}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.Platform", "Recyclarr.Platform\Recyclarr.Platform.csproj", "{CB296D81-813B-48C3-9D4B-A52951EF26BF}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.VersionControl", "Recyclarr.VersionControl\Recyclarr.VersionControl.csproj", "{0495507A-0307-43EA-B97F-EDF2C0241839}" @@ -70,6 +44,16 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.Settings", "Recyc EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.ServarrApi", "Recyclarr.ServarrApi\Recyclarr.ServarrApi.csproj", "{5B48995A-1181-46AA-AC38-C040BDD3D7B7}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.Compatibility", "Recyclarr.Compatibility\Recyclarr.Compatibility.csproj", "{03B4A46E-234D-47C9-8078-0B749800229A}" +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}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Recyclarr.Cli.Tests", "tests\Recyclarr.Cli.Tests\Recyclarr.Cli.Tests.csproj", "{59886A2A-338F-4864-9735-1633433B1F8F}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -80,50 +64,22 @@ Global {CD5C6F99-C587-4B7C-86AE-550FA4A5594A}.Debug|Any CPU.Build.0 = Debug|Any CPU {CD5C6F99-C587-4B7C-86AE-550FA4A5594A}.Release|Any CPU.ActiveCfg = Release|Any CPU {CD5C6F99-C587-4B7C-86AE-550FA4A5594A}.Release|Any CPU.Build.0 = Release|Any CPU - {217D5972-4BB7-4343-9043-C30BD9A1811E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {217D5972-4BB7-4343-9043-C30BD9A1811E}.Debug|Any CPU.Build.0 = Debug|Any CPU - {217D5972-4BB7-4343-9043-C30BD9A1811E}.Release|Any CPU.ActiveCfg = Release|Any CPU - {217D5972-4BB7-4343-9043-C30BD9A1811E}.Release|Any CPU.Build.0 = Release|Any CPU {49F28A82-468F-4C48-9A59-D41B8FE26D6E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {49F28A82-468F-4C48-9A59-D41B8FE26D6E}.Debug|Any CPU.Build.0 = Debug|Any CPU {49F28A82-468F-4C48-9A59-D41B8FE26D6E}.Release|Any CPU.ActiveCfg = Release|Any CPU {49F28A82-468F-4C48-9A59-D41B8FE26D6E}.Release|Any CPU.Build.0 = Release|Any CPU - {BF105B2F-8E13-48AD-BF72-DF7EFEB018B6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {BF105B2F-8E13-48AD-BF72-DF7EFEB018B6}.Debug|Any CPU.Build.0 = Debug|Any CPU - {BF105B2F-8E13-48AD-BF72-DF7EFEB018B6}.Release|Any CPU.ActiveCfg = Release|Any CPU - {BF105B2F-8E13-48AD-BF72-DF7EFEB018B6}.Release|Any CPU.Build.0 = Release|Any CPU {18CF1FCA-7983-4423-8B7E-4A830108C624}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {18CF1FCA-7983-4423-8B7E-4A830108C624}.Debug|Any CPU.Build.0 = Debug|Any CPU {18CF1FCA-7983-4423-8B7E-4A830108C624}.Release|Any CPU.ActiveCfg = Release|Any CPU {18CF1FCA-7983-4423-8B7E-4A830108C624}.Release|Any CPU.Build.0 = Release|Any CPU - {0720939D-1CA6-43D7-BBED-F8F894C4F562}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {0720939D-1CA6-43D7-BBED-F8F894C4F562}.Debug|Any CPU.Build.0 = Debug|Any CPU - {0720939D-1CA6-43D7-BBED-F8F894C4F562}.Release|Any CPU.ActiveCfg = Release|Any CPU - {0720939D-1CA6-43D7-BBED-F8F894C4F562}.Release|Any CPU.Build.0 = Release|Any CPU - {33226068-65E3-4890-8671-59A56BA3F6F0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {33226068-65E3-4890-8671-59A56BA3F6F0}.Debug|Any CPU.Build.0 = Debug|Any CPU - {33226068-65E3-4890-8671-59A56BA3F6F0}.Release|Any CPU.ActiveCfg = Release|Any CPU - {33226068-65E3-4890-8671-59A56BA3F6F0}.Release|Any CPU.Build.0 = Release|Any CPU - {4F6ACBA6-9A7D-487C-ACC1-787CCC90A381}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {4F6ACBA6-9A7D-487C-ACC1-787CCC90A381}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4F6ACBA6-9A7D-487C-ACC1-787CCC90A381}.Release|Any CPU.ActiveCfg = Release|Any CPU - {4F6ACBA6-9A7D-487C-ACC1-787CCC90A381}.Release|Any CPU.Build.0 = Release|Any CPU {A4EC7E0D-C591-4874-B9AC-EB12A96F3E83}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {A4EC7E0D-C591-4874-B9AC-EB12A96F3E83}.Debug|Any CPU.Build.0 = Debug|Any CPU {A4EC7E0D-C591-4874-B9AC-EB12A96F3E83}.Release|Any CPU.ActiveCfg = Release|Any CPU {A4EC7E0D-C591-4874-B9AC-EB12A96F3E83}.Release|Any CPU.Build.0 = Release|Any CPU - {77D1C695-94D4-46A9-8F12-41E54AF97750}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {77D1C695-94D4-46A9-8F12-41E54AF97750}.Debug|Any CPU.Build.0 = Debug|Any CPU - {77D1C695-94D4-46A9-8F12-41E54AF97750}.Release|Any CPU.ActiveCfg = Release|Any CPU - {77D1C695-94D4-46A9-8F12-41E54AF97750}.Release|Any CPU.Build.0 = Release|Any CPU {53EECBC0-E0EA-4D6C-925C-5DB8C42CCB85}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {53EECBC0-E0EA-4D6C-925C-5DB8C42CCB85}.Debug|Any CPU.Build.0 = Debug|Any CPU {53EECBC0-E0EA-4D6C-925C-5DB8C42CCB85}.Release|Any CPU.ActiveCfg = Release|Any CPU {53EECBC0-E0EA-4D6C-925C-5DB8C42CCB85}.Release|Any CPU.Build.0 = Release|Any CPU - {A92321B5-2796-467B-B5A5-2BFC41167A25}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {A92321B5-2796-467B-B5A5-2BFC41167A25}.Debug|Any CPU.Build.0 = Debug|Any CPU - {A92321B5-2796-467B-B5A5-2BFC41167A25}.Release|Any CPU.ActiveCfg = Release|Any CPU - {A92321B5-2796-467B-B5A5-2BFC41167A25}.Release|Any CPU.Build.0 = Release|Any CPU {7B8F0720-A6E1-48FF-BD60-8B6964366B7F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {7B8F0720-A6E1-48FF-BD60-8B6964366B7F}.Debug|Any CPU.Build.0 = Debug|Any CPU {7B8F0720-A6E1-48FF-BD60-8B6964366B7F}.Release|Any CPU.ActiveCfg = Release|Any CPU @@ -136,34 +92,10 @@ Global {37220364-7C1E-4561-A369-C32BA195A0C3}.Debug|Any CPU.Build.0 = Debug|Any CPU {37220364-7C1E-4561-A369-C32BA195A0C3}.Release|Any CPU.ActiveCfg = Release|Any CPU {37220364-7C1E-4561-A369-C32BA195A0C3}.Release|Any CPU.Build.0 = Release|Any CPU - {0E5C6E86-F899-4743-8DCF-7812E717C604}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {0E5C6E86-F899-4743-8DCF-7812E717C604}.Debug|Any CPU.Build.0 = Debug|Any CPU - {0E5C6E86-F899-4743-8DCF-7812E717C604}.Release|Any CPU.ActiveCfg = Release|Any CPU - {0E5C6E86-F899-4743-8DCF-7812E717C604}.Release|Any CPU.Build.0 = Release|Any CPU - {2B4CAFB7-02D7-4909-98C4-7393C1366C39}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {2B4CAFB7-02D7-4909-98C4-7393C1366C39}.Debug|Any CPU.Build.0 = Debug|Any CPU - {2B4CAFB7-02D7-4909-98C4-7393C1366C39}.Release|Any CPU.ActiveCfg = Release|Any CPU - {2B4CAFB7-02D7-4909-98C4-7393C1366C39}.Release|Any CPU.Build.0 = Release|Any CPU - {533299C5-71A9-4461-90BB-05C3404F2143}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {533299C5-71A9-4461-90BB-05C3404F2143}.Debug|Any CPU.Build.0 = Debug|Any CPU - {533299C5-71A9-4461-90BB-05C3404F2143}.Release|Any CPU.ActiveCfg = Release|Any CPU - {533299C5-71A9-4461-90BB-05C3404F2143}.Release|Any CPU.Build.0 = Release|Any CPU - {B3FC265C-36EF-4815-9EB1-CB878FBEE6D6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {B3FC265C-36EF-4815-9EB1-CB878FBEE6D6}.Debug|Any CPU.Build.0 = Debug|Any CPU - {B3FC265C-36EF-4815-9EB1-CB878FBEE6D6}.Release|Any CPU.ActiveCfg = Release|Any CPU - {B3FC265C-36EF-4815-9EB1-CB878FBEE6D6}.Release|Any CPU.Build.0 = Release|Any CPU {A9E2F11E-73F8-48CC-8770-0AFD41E80141}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {A9E2F11E-73F8-48CC-8770-0AFD41E80141}.Debug|Any CPU.Build.0 = Debug|Any CPU {A9E2F11E-73F8-48CC-8770-0AFD41E80141}.Release|Any CPU.ActiveCfg = Release|Any CPU {A9E2F11E-73F8-48CC-8770-0AFD41E80141}.Release|Any CPU.Build.0 = Release|Any CPU - {737A1B22-F3A5-4920-AED7-77E756D14113}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {737A1B22-F3A5-4920-AED7-77E756D14113}.Debug|Any CPU.Build.0 = Debug|Any CPU - {737A1B22-F3A5-4920-AED7-77E756D14113}.Release|Any CPU.ActiveCfg = Release|Any CPU - {737A1B22-F3A5-4920-AED7-77E756D14113}.Release|Any CPU.Build.0 = Release|Any CPU - {59B75C08-F144-4190-A7D0-C027044147D2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {59B75C08-F144-4190-A7D0-C027044147D2}.Debug|Any CPU.Build.0 = Debug|Any CPU - {59B75C08-F144-4190-A7D0-C027044147D2}.Release|Any CPU.ActiveCfg = Release|Any CPU - {59B75C08-F144-4190-A7D0-C027044147D2}.Release|Any CPU.Build.0 = Release|Any CPU {CB296D81-813B-48C3-9D4B-A52951EF26BF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {CB296D81-813B-48C3-9D4B-A52951EF26BF}.Debug|Any CPU.Build.0 = Debug|Any CPU {CB296D81-813B-48C3-9D4B-A52951EF26BF}.Release|Any CPU.ActiveCfg = Release|Any CPU @@ -184,6 +116,26 @@ Global {5B48995A-1181-46AA-AC38-C040BDD3D7B7}.Debug|Any CPU.Build.0 = Debug|Any CPU {5B48995A-1181-46AA-AC38-C040BDD3D7B7}.Release|Any CPU.ActiveCfg = Release|Any CPU {5B48995A-1181-46AA-AC38-C040BDD3D7B7}.Release|Any CPU.Build.0 = Release|Any CPU + {03B4A46E-234D-47C9-8078-0B749800229A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {03B4A46E-234D-47C9-8078-0B749800229A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {03B4A46E-234D-47C9-8078-0B749800229A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {03B4A46E-234D-47C9-8078-0B749800229A}.Release|Any CPU.Build.0 = Release|Any CPU + {DE198BA1-2906-43BB-9CDB-977B9218A670}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {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 + {59886A2A-338F-4864-9735-1633433B1F8F}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -192,19 +144,11 @@ Global SolutionGuid = {AFBE3E4F-DA4D-4EBD-8700-C3C42B59D6AB} EndGlobalSection GlobalSection(NestedProjects) = preSolution - {77D1C695-94D4-46A9-8F12-41E54AF97750} = {18E17C53-F600-40AE-82C1-3CD1E547C307} - {217D5972-4BB7-4343-9043-C30BD9A1811E} = {18E17C53-F600-40AE-82C1-3CD1E547C307} - {A92321B5-2796-467B-B5A5-2BFC41167A25} = {18E17C53-F600-40AE-82C1-3CD1E547C307} - {0720939D-1CA6-43D7-BBED-F8F894C4F562} = {18E17C53-F600-40AE-82C1-3CD1E547C307} {49F28A82-468F-4C48-9A59-D41B8FE26D6E} = {18E17C53-F600-40AE-82C1-3CD1E547C307} - {BF105B2F-8E13-48AD-BF72-DF7EFEB018B6} = {18E17C53-F600-40AE-82C1-3CD1E547C307} - {33226068-65E3-4890-8671-59A56BA3F6F0} = {18E17C53-F600-40AE-82C1-3CD1E547C307} {A4EC7E0D-C591-4874-B9AC-EB12A96F3E83} = {18E17C53-F600-40AE-82C1-3CD1E547C307} - {0E5C6E86-F899-4743-8DCF-7812E717C604} = {18E17C53-F600-40AE-82C1-3CD1E547C307} - {2B4CAFB7-02D7-4909-98C4-7393C1366C39} = {18E17C53-F600-40AE-82C1-3CD1E547C307} - {533299C5-71A9-4461-90BB-05C3404F2143} = {18E17C53-F600-40AE-82C1-3CD1E547C307} - {B3FC265C-36EF-4815-9EB1-CB878FBEE6D6} = {18E17C53-F600-40AE-82C1-3CD1E547C307} - {737A1B22-F3A5-4920-AED7-77E756D14113} = {18E17C53-F600-40AE-82C1-3CD1E547C307} - {59B75C08-F144-4190-A7D0-C027044147D2} = {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} EndGlobalSection EndGlobal diff --git a/src/tests/Directory.Build.props b/src/tests/Directory.Build.props index ef984163..05b831c4 100644 --- a/src/tests/Directory.Build.props +++ b/src/tests/Directory.Build.props @@ -3,6 +3,7 @@ false + $(DefaultItemExcludes);TestResults\*\** diff --git a/src/tests/Recyclarr.Cli.Tests/AutoMapperConfigurationTest.cs b/src/tests/Recyclarr.Cli.IntegrationTests/AutoMapperConfigurationTest.cs similarity index 78% rename from src/tests/Recyclarr.Cli.Tests/AutoMapperConfigurationTest.cs rename to src/tests/Recyclarr.Cli.IntegrationTests/AutoMapperConfigurationTest.cs index 152bc304..bf027f72 100644 --- a/src/tests/Recyclarr.Cli.Tests/AutoMapperConfigurationTest.cs +++ b/src/tests/Recyclarr.Cli.IntegrationTests/AutoMapperConfigurationTest.cs @@ -1,11 +1,10 @@ using AutoMapper; -using Recyclarr.Cli.TestLibrary; -namespace Recyclarr.Cli.Tests; +namespace Recyclarr.Cli.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class AutoMapperConfigurationTest : CliIntegrationFixture +internal class AutoMapperConfigurationTest : CliIntegrationFixture { [Test] public void Automapper_config_is_valid() diff --git a/src/tests/Recyclarr.Cli.Tests/BaseCommandSetupIntegrationTest.cs b/src/tests/Recyclarr.Cli.IntegrationTests/BaseCommandSetupIntegrationTest.cs similarity index 93% rename from src/tests/Recyclarr.Cli.Tests/BaseCommandSetupIntegrationTest.cs rename to src/tests/Recyclarr.Cli.IntegrationTests/BaseCommandSetupIntegrationTest.cs index 39043019..7f1c89a9 100644 --- a/src/tests/Recyclarr.Cli.Tests/BaseCommandSetupIntegrationTest.cs +++ b/src/tests/Recyclarr.Cli.IntegrationTests/BaseCommandSetupIntegrationTest.cs @@ -1,14 +1,13 @@ using System.IO.Abstractions; using Recyclarr.Cli.Console.Setup; -using Recyclarr.Cli.TestLibrary; -using Recyclarr.Common.TestLibrary; using Recyclarr.Settings; +using Recyclarr.TestLibrary; -namespace Recyclarr.Cli.Tests; +namespace Recyclarr.Cli.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class BaseCommandSetupIntegrationTest : CliIntegrationFixture +internal class BaseCommandSetupIntegrationTest : CliIntegrationFixture { [Test] public void Base_command_startup_tasks_are_registered() diff --git a/src/tests/Recyclarr.Cli.TestLibrary/CliIntegrationFixture.cs b/src/tests/Recyclarr.Cli.IntegrationTests/CliIntegrationFixture.cs similarity index 69% rename from src/tests/Recyclarr.Cli.TestLibrary/CliIntegrationFixture.cs rename to src/tests/Recyclarr.Cli.IntegrationTests/CliIntegrationFixture.cs index 9b51b62b..a0a1e3e9 100644 --- a/src/tests/Recyclarr.Cli.TestLibrary/CliIntegrationFixture.cs +++ b/src/tests/Recyclarr.Cli.IntegrationTests/CliIntegrationFixture.cs @@ -1,10 +1,10 @@ using Autofac; -using Recyclarr.TrashLib.TestLibrary; +using Recyclarr.IntegrationTests; -namespace Recyclarr.Cli.TestLibrary; +namespace Recyclarr.Cli.IntegrationTests; [FixtureLifeCycle(LifeCycle.InstancePerTestCase)] -public abstract class CliIntegrationFixture : TrashLibIntegrationFixture +internal abstract class CliIntegrationFixture : IntegrationTestFixture { protected override void RegisterTypes(ContainerBuilder builder) { diff --git a/src/tests/Recyclarr.Cli.Tests/CompositionRootTest.cs b/src/tests/Recyclarr.Cli.IntegrationTests/CompositionRootTest.cs similarity index 97% rename from src/tests/Recyclarr.Cli.Tests/CompositionRootTest.cs rename to src/tests/Recyclarr.Cli.IntegrationTests/CompositionRootTest.cs index dbfb0f3f..cf33378b 100644 --- a/src/tests/Recyclarr.Cli.Tests/CompositionRootTest.cs +++ b/src/tests/Recyclarr.Cli.IntegrationTests/CompositionRootTest.cs @@ -8,7 +8,7 @@ using Recyclarr.TestLibrary.Autofac; using Serilog.Core; using Spectre.Console; -namespace Recyclarr.Cli.Tests; +namespace Recyclarr.Cli.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Cli.Tests/Processors/ConfigCreationProcessorIntegrationTest.cs b/src/tests/Recyclarr.Cli.IntegrationTests/ConfigCreationProcessorIntegrationTest.cs similarity index 94% rename from src/tests/Recyclarr.Cli.Tests/Processors/ConfigCreationProcessorIntegrationTest.cs rename to src/tests/Recyclarr.Cli.IntegrationTests/ConfigCreationProcessorIntegrationTest.cs index 13819d27..60d15fa3 100644 --- a/src/tests/Recyclarr.Cli.Tests/Processors/ConfigCreationProcessorIntegrationTest.cs +++ b/src/tests/Recyclarr.Cli.IntegrationTests/ConfigCreationProcessorIntegrationTest.cs @@ -2,15 +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; -using Recyclarr.TrashLib.ExceptionTypes; -namespace Recyclarr.Cli.Tests.Processors; +namespace Recyclarr.Cli.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class ConfigCreationProcessorIntegrationTest : CliIntegrationFixture +internal class ConfigCreationProcessorIntegrationTest : CliIntegrationFixture { [Test] public void Config_file_created_when_using_default_path() diff --git a/src/tests/Recyclarr.Cli.Tests/Processors/Config/ConfigManipulatorTest.cs b/src/tests/Recyclarr.Cli.IntegrationTests/ConfigManipulatorTest.cs similarity index 90% rename from src/tests/Recyclarr.Cli.Tests/Processors/Config/ConfigManipulatorTest.cs rename to src/tests/Recyclarr.Cli.IntegrationTests/ConfigManipulatorTest.cs index 38473e8f..c90de7e5 100644 --- a/src/tests/Recyclarr.Cli.Tests/Processors/Config/ConfigManipulatorTest.cs +++ b/src/tests/Recyclarr.Cli.IntegrationTests/ConfigManipulatorTest.cs @@ -1,13 +1,12 @@ using System.IO.Abstractions; using Recyclarr.Cli.Processors.Config; -using Recyclarr.Cli.TestLibrary; using Recyclarr.Common.Extensions; -namespace Recyclarr.Cli.Tests.Processors.Config; +namespace Recyclarr.Cli.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class ConfigManipulatorTest : CliIntegrationFixture +internal class ConfigManipulatorTest : CliIntegrationFixture { [Test] public void Create_file_when_no_file_already_exists() diff --git a/src/tests/Recyclarr.Cli.Tests/Pipelines/CustomFormat/PipelinePhases/CustomFormatTransactionPhaseTest.cs b/src/tests/Recyclarr.Cli.IntegrationTests/CustomFormatTransactionPhaseTest.cs similarity index 98% rename from src/tests/Recyclarr.Cli.Tests/Pipelines/CustomFormat/PipelinePhases/CustomFormatTransactionPhaseTest.cs rename to src/tests/Recyclarr.Cli.IntegrationTests/CustomFormatTransactionPhaseTest.cs index 9fd50987..339d2e3c 100644 --- a/src/tests/Recyclarr.Cli.Tests/Pipelines/CustomFormat/PipelinePhases/CustomFormatTransactionPhaseTest.cs +++ b/src/tests/Recyclarr.Cli.IntegrationTests/CustomFormatTransactionPhaseTest.cs @@ -2,15 +2,14 @@ using Recyclarr.Cli.Cache; using Recyclarr.Cli.Pipelines.CustomFormat; using Recyclarr.Cli.Pipelines.CustomFormat.Models; using Recyclarr.Cli.Pipelines.CustomFormat.PipelinePhases; -using Recyclarr.Cli.TestLibrary; +using Recyclarr.Tests.TestLibrary; using Recyclarr.TrashGuide.CustomFormat; -using Recyclarr.TrashLib.TestLibrary; -namespace Recyclarr.Cli.Tests.Pipelines.CustomFormat.PipelinePhases; +namespace Recyclarr.Cli.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class CustomFormatTransactionPhaseTest : CliIntegrationFixture +internal class CustomFormatTransactionPhaseTest : CliIntegrationFixture { [Test] public void Add_new_cf() diff --git a/src/tests/Recyclarr.Cli.IntegrationTests/Recyclarr.Cli.IntegrationTests.csproj b/src/tests/Recyclarr.Cli.IntegrationTests/Recyclarr.Cli.IntegrationTests.csproj new file mode 100644 index 00000000..f715d277 --- /dev/null +++ b/src/tests/Recyclarr.Cli.IntegrationTests/Recyclarr.Cli.IntegrationTests.csproj @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/tests/Recyclarr.Cli.Tests/ServiceCompatibilityIntegrationTest.cs b/src/tests/Recyclarr.Cli.IntegrationTests/ServiceCompatibilityIntegrationTest.cs similarity index 85% rename from src/tests/Recyclarr.Cli.Tests/ServiceCompatibilityIntegrationTest.cs rename to src/tests/Recyclarr.Cli.IntegrationTests/ServiceCompatibilityIntegrationTest.cs index 58a1300d..f1119abf 100644 --- a/src/tests/Recyclarr.Cli.Tests/ServiceCompatibilityIntegrationTest.cs +++ b/src/tests/Recyclarr.Cli.IntegrationTests/ServiceCompatibilityIntegrationTest.cs @@ -1,12 +1,11 @@ using System.IO.Abstractions; -using Recyclarr.Cli.TestLibrary; using Recyclarr.Settings; -namespace Recyclarr.Cli.Tests; +namespace Recyclarr.Cli.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class ServiceCompatibilityIntegrationTest : CliIntegrationFixture +internal class ServiceCompatibilityIntegrationTest : CliIntegrationFixture { [Test] public void Load_settings_yml_correctly_when_file_exists() diff --git a/src/tests/Recyclarr.Cli.Tests/Processors/Config/TemplateConfigCreatorIntegrationTest.cs b/src/tests/Recyclarr.Cli.IntegrationTests/TemplateConfigCreatorIntegrationTest.cs similarity index 92% rename from src/tests/Recyclarr.Cli.Tests/Processors/Config/TemplateConfigCreatorIntegrationTest.cs rename to src/tests/Recyclarr.Cli.IntegrationTests/TemplateConfigCreatorIntegrationTest.cs index 525dccbd..86063eef 100644 --- a/src/tests/Recyclarr.Cli.Tests/Processors/Config/TemplateConfigCreatorIntegrationTest.cs +++ b/src/tests/Recyclarr.Cli.IntegrationTests/TemplateConfigCreatorIntegrationTest.cs @@ -1,14 +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.Tests.Processors.Config; +namespace Recyclarr.Cli.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class TemplateConfigCreatorIntegrationTest : CliIntegrationFixture +internal class TemplateConfigCreatorIntegrationTest : CliIntegrationFixture { [Test] public void Template_id_matching_works() diff --git a/src/tests/Recyclarr.Cli.TestLibrary/MockSyncSettings.cs b/src/tests/Recyclarr.Cli.TestLibrary/MockSyncSettings.cs deleted file mode 100644 index a9f555d7..00000000 --- a/src/tests/Recyclarr.Cli.TestLibrary/MockSyncSettings.cs +++ /dev/null @@ -1,30 +0,0 @@ -using Recyclarr.Cli.Console.Settings; -using Recyclarr.Common; - -namespace Recyclarr.Cli.TestLibrary; - -public static class MockSyncSettings -{ - private static ISyncSettings MakeSyncSettings(SupportedServices? service, params string[] instances) - { - var settings = Substitute.For(); - settings.Service.Returns(service); - settings.Instances.Returns(instances); - return settings; - } - - public static ISyncSettings Radarr(params string[] instances) - { - return MakeSyncSettings(SupportedServices.Radarr, instances); - } - - public static ISyncSettings Sonarr(params string[] instances) - { - return MakeSyncSettings(SupportedServices.Sonarr, instances); - } - - public static ISyncSettings AnyService(params string[] instances) - { - return MakeSyncSettings(null, instances); - } -} diff --git a/src/tests/Recyclarr.Cli.TestLibrary/Recyclarr.Cli.TestLibrary.csproj b/src/tests/Recyclarr.Cli.TestLibrary/Recyclarr.Cli.TestLibrary.csproj deleted file mode 100644 index 3f16a94f..00000000 --- a/src/tests/Recyclarr.Cli.TestLibrary/Recyclarr.Cli.TestLibrary.csproj +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/src/tests/Recyclarr.Cli.Tests/Cache/CustomFormatCacheTest.cs b/src/tests/Recyclarr.Cli.Tests/Cache/CustomFormatCacheTest.cs index 0d454f50..686263ea 100644 --- a/src/tests/Recyclarr.Cli.Tests/Cache/CustomFormatCacheTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/Cache/CustomFormatCacheTest.cs @@ -1,6 +1,6 @@ using Recyclarr.Cli.Cache; using Recyclarr.Cli.Pipelines.CustomFormat; -using Recyclarr.TrashLib.TestLibrary; +using Recyclarr.Tests.TestLibrary; namespace Recyclarr.Cli.Tests.Cache; diff --git a/src/tests/Recyclarr.Cli.Tests/Cache/ServiceCacheTest.cs b/src/tests/Recyclarr.Cli.Tests/Cache/ServiceCacheTest.cs index 0c81bf70..54be1d39 100644 --- a/src/tests/Recyclarr.Cli.Tests/Cache/ServiceCacheTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/Cache/ServiceCacheTest.cs @@ -1,8 +1,8 @@ using System.Collections.ObjectModel; using System.Diagnostics.CodeAnalysis; using Recyclarr.Cli.Cache; +using Recyclarr.Cli.Console.Helpers; using Recyclarr.Config.Models; -using Recyclarr.TrashLib.Interfaces; namespace Recyclarr.Cli.Tests.Cache; diff --git a/src/tests/Recyclarr.Cli.Tests/Console/Commands/ConfigCommandsIntegrationTest.cs b/src/tests/Recyclarr.Cli.Tests/Console/Commands/ConfigCommandsTest.cs similarity index 89% rename from src/tests/Recyclarr.Cli.Tests/Console/Commands/ConfigCommandsIntegrationTest.cs rename to src/tests/Recyclarr.Cli.Tests/Console/Commands/ConfigCommandsTest.cs index 9b47b837..3792a074 100644 --- a/src/tests/Recyclarr.Cli.Tests/Console/Commands/ConfigCommandsIntegrationTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/Console/Commands/ConfigCommandsTest.cs @@ -1,12 +1,11 @@ using Recyclarr.Cli.Console.Commands; -using Recyclarr.Cli.TestLibrary; using Recyclarr.Repo; namespace Recyclarr.Cli.Tests.Console.Commands; [TestFixture] [Parallelizable(ParallelScope.All)] -public class ConfigCommandsIntegrationTest : CliIntegrationFixture +public class ConfigCommandsTest { [Test, AutoMockData] public async Task Repo_update_is_called_on_config_list( diff --git a/src/tests/Recyclarr.Cli.Tests/Console/Commands/ListCommandsIntegrationTest.cs b/src/tests/Recyclarr.Cli.Tests/Console/Commands/ListCommandsTest.cs similarity index 92% rename from src/tests/Recyclarr.Cli.Tests/Console/Commands/ListCommandsIntegrationTest.cs rename to src/tests/Recyclarr.Cli.Tests/Console/Commands/ListCommandsTest.cs index 86442557..48fe104e 100644 --- a/src/tests/Recyclarr.Cli.Tests/Console/Commands/ListCommandsIntegrationTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/Console/Commands/ListCommandsTest.cs @@ -1,12 +1,11 @@ using Recyclarr.Cli.Console.Commands; -using Recyclarr.Cli.TestLibrary; using Recyclarr.Repo; namespace Recyclarr.Cli.Tests.Console.Commands; [TestFixture] [Parallelizable(ParallelScope.All)] -public class ListCommandsIntegrationTest : CliIntegrationFixture +public class ListCommandsTest { [Test, AutoMockData] public async Task Repo_update_is_called_on_list_custom_formats( diff --git a/src/tests/Recyclarr.Cli.Tests/GlobalUsings.cs b/src/tests/Recyclarr.Cli.Tests/GlobalUsings.cs index d328a191..ddaecfaa 100644 --- a/src/tests/Recyclarr.Cli.Tests/GlobalUsings.cs +++ b/src/tests/Recyclarr.Cli.Tests/GlobalUsings.cs @@ -1 +1,3 @@ +// Global using directives + global using Recyclarr.TestLibrary.AutoFixture; diff --git a/src/tests/Recyclarr.Cli.Tests/LogJanitorTest.cs b/src/tests/Recyclarr.Cli.Tests/LogJanitorTest.cs index c347f1e0..719fe2c3 100644 --- a/src/tests/Recyclarr.Cli.Tests/LogJanitorTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/LogJanitorTest.cs @@ -1,6 +1,6 @@ using System.IO.Abstractions; using Recyclarr.Cli.Logging; -using Recyclarr.TrashLib.TestLibrary; +using Recyclarr.Tests.TestLibrary; namespace Recyclarr.Cli.Tests; diff --git a/src/tests/Recyclarr.Cli.Tests/Migration/MigrationExecutorTest.cs b/src/tests/Recyclarr.Cli.Tests/Migration/MigrationExecutorTest.cs index f66c6600..0ec60421 100644 --- a/src/tests/Recyclarr.Cli.Tests/Migration/MigrationExecutorTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/Migration/MigrationExecutorTest.cs @@ -1,13 +1,12 @@ using Recyclarr.Cli.Migration; using Recyclarr.Cli.Migration.Steps; -using Recyclarr.Cli.TestLibrary; using Spectre.Console.Testing; namespace Recyclarr.Cli.Tests.Migration; [TestFixture] [Parallelizable(ParallelScope.All)] -public class MigrationExecutorTest : CliIntegrationFixture +public class MigrationExecutorTest { [Test] public void Step_not_executed_if_check_returns_false() diff --git a/src/tests/Recyclarr.Cli.TestLibrary/NewQp.cs b/src/tests/Recyclarr.Cli.Tests/NewQp.cs similarity index 99% rename from src/tests/Recyclarr.Cli.TestLibrary/NewQp.cs rename to src/tests/Recyclarr.Cli.Tests/NewQp.cs index 22e6019a..255b26d6 100644 --- a/src/tests/Recyclarr.Cli.TestLibrary/NewQp.cs +++ b/src/tests/Recyclarr.Cli.Tests/NewQp.cs @@ -4,7 +4,7 @@ using Recyclarr.Cli.Pipelines.QualityProfile.PipelinePhases; using Recyclarr.Config.Models; using Recyclarr.ServarrApi.Dto; -namespace Recyclarr.Cli.TestLibrary; +namespace Recyclarr.Cli.Tests; public static class NewQp { diff --git a/src/tests/Recyclarr.Cli.Tests/Pipelines/CustomFormat/CustomFormatDataListerTest.cs b/src/tests/Recyclarr.Cli.Tests/Pipelines/CustomFormat/CustomFormatDataListerTest.cs index 03314256..aacd8e2b 100644 --- a/src/tests/Recyclarr.Cli.Tests/Pipelines/CustomFormat/CustomFormatDataListerTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/Pipelines/CustomFormat/CustomFormatDataListerTest.cs @@ -1,7 +1,7 @@ using Recyclarr.Cli.Console.Settings; using Recyclarr.Cli.Pipelines.CustomFormat; +using Recyclarr.Tests.TestLibrary; using Recyclarr.TrashGuide.CustomFormat; -using Recyclarr.TrashLib.TestLibrary; using Spectre.Console.Testing; namespace Recyclarr.Cli.Tests.Pipelines.CustomFormat; diff --git a/src/tests/Recyclarr.Cli.Tests/Pipelines/CustomFormat/PipelinePhases/CustomFormatConfigPhaseTest.cs b/src/tests/Recyclarr.Cli.Tests/Pipelines/CustomFormat/PipelinePhases/CustomFormatConfigPhaseTest.cs index 699d0ce2..87f5fc99 100644 --- a/src/tests/Recyclarr.Cli.Tests/Pipelines/CustomFormat/PipelinePhases/CustomFormatConfigPhaseTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/Pipelines/CustomFormat/PipelinePhases/CustomFormatConfigPhaseTest.cs @@ -1,7 +1,7 @@ using Recyclarr.Cli.Pipelines.CustomFormat.PipelinePhases; using Recyclarr.Config.Models; +using Recyclarr.Tests.TestLibrary; using Recyclarr.TrashGuide.CustomFormat; -using Recyclarr.TrashLib.TestLibrary; namespace Recyclarr.Cli.Tests.Pipelines.CustomFormat.PipelinePhases; diff --git a/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/Api/QualityProfileDtoTest.cs b/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/Api/QualityProfileDtoTest.cs index 389ff89c..04f7720d 100644 --- a/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/Api/QualityProfileDtoTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/Api/QualityProfileDtoTest.cs @@ -1,4 +1,3 @@ -using Recyclarr.Cli.TestLibrary; using Recyclarr.ServarrApi.Dto; namespace Recyclarr.Cli.Tests.Pipelines.QualityProfile.Api; diff --git a/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/PipelinePhases/QualityProfileConfigPhaseTest.cs b/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/PipelinePhases/QualityProfileConfigPhaseTest.cs index 23a8144a..c7b09540 100644 --- a/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/PipelinePhases/QualityProfileConfigPhaseTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/PipelinePhases/QualityProfileConfigPhaseTest.cs @@ -1,8 +1,7 @@ using Recyclarr.Cli.Pipelines.CustomFormat.Models; using Recyclarr.Cli.Pipelines.QualityProfile.PipelinePhases; -using Recyclarr.Cli.TestLibrary; using Recyclarr.Config.Models; -using Recyclarr.TrashLib.TestLibrary; +using Recyclarr.Tests.TestLibrary; namespace Recyclarr.Cli.Tests.Pipelines.QualityProfile.PipelinePhases; diff --git a/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/PipelinePhases/QualityProfileTransactionPhaseTest.cs b/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/PipelinePhases/QualityProfileTransactionPhaseTest.cs index 9607cd1c..64ead7e6 100644 --- a/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/PipelinePhases/QualityProfileTransactionPhaseTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/PipelinePhases/QualityProfileTransactionPhaseTest.cs @@ -1,6 +1,5 @@ using Recyclarr.Cli.Pipelines.QualityProfile; using Recyclarr.Cli.Pipelines.QualityProfile.PipelinePhases; -using Recyclarr.Cli.TestLibrary; using Recyclarr.Config.Models; using Recyclarr.ServarrApi.Dto; diff --git a/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/QualityItemOrganizerTest.cs b/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/QualityItemOrganizerTest.cs index c2f0c4a8..eacf6156 100644 --- a/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/QualityItemOrganizerTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/QualityItemOrganizerTest.cs @@ -1,5 +1,4 @@ using Recyclarr.Cli.Pipelines.QualityProfile; -using Recyclarr.Cli.TestLibrary; using Recyclarr.Config.Models; using Recyclarr.ServarrApi.Dto; diff --git a/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/QualityProfileExtensionsTest.cs b/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/QualityProfileExtensionsTest.cs index 852b6ebd..79287a74 100644 --- a/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/QualityProfileExtensionsTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/QualityProfileExtensionsTest.cs @@ -1,5 +1,4 @@ using Recyclarr.Cli.Pipelines.QualityProfile; -using Recyclarr.Cli.TestLibrary; using Recyclarr.ServarrApi.Dto; using Recyclarr.ServarrApi.Extensions; diff --git a/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/UpdatedQualityProfileTest.cs b/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/UpdatedQualityProfileTest.cs index 4b4d14f3..cc37335a 100644 --- a/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/UpdatedQualityProfileTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/UpdatedQualityProfileTest.cs @@ -1,6 +1,5 @@ using Recyclarr.Cli.Pipelines.QualityProfile; using Recyclarr.Cli.Pipelines.QualityProfile.PipelinePhases; -using Recyclarr.Cli.TestLibrary; using Recyclarr.Config.Models; using Recyclarr.ServarrApi.Dto; diff --git a/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/UpdatedQualityProfileValidatorTest.cs b/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/UpdatedQualityProfileValidatorTest.cs index 4691adee..df91a9ca 100644 --- a/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/UpdatedQualityProfileValidatorTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/Pipelines/QualityProfile/UpdatedQualityProfileValidatorTest.cs @@ -1,7 +1,6 @@ using FluentValidation.TestHelper; using Recyclarr.Cli.Pipelines.QualityProfile; using Recyclarr.Cli.Pipelines.QualityProfile.PipelinePhases; -using Recyclarr.Cli.TestLibrary; using Recyclarr.Config.Models; using Recyclarr.ServarrApi.Dto; diff --git a/src/tests/Recyclarr.Cli.Tests/Pipelines/Tags/PipelinePhases/TagConfigPhaseTest.cs b/src/tests/Recyclarr.Cli.Tests/Pipelines/Tags/PipelinePhases/TagConfigPhaseTest.cs index 4aea3dcf..cc1a0ddf 100644 --- a/src/tests/Recyclarr.Cli.Tests/Pipelines/Tags/PipelinePhases/TagConfigPhaseTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/Pipelines/Tags/PipelinePhases/TagConfigPhaseTest.cs @@ -1,6 +1,6 @@ using Recyclarr.Cli.Pipelines.Tags.PipelinePhases; using Recyclarr.Config.Models; -using Recyclarr.TrashLib.TestLibrary; +using Recyclarr.Tests.TestLibrary; namespace Recyclarr.Cli.Tests.Pipelines.Tags.PipelinePhases; diff --git a/src/tests/Recyclarr.Cli.Tests/Processors/Config/TemplateConfigCreatorTest.cs b/src/tests/Recyclarr.Cli.Tests/Processors/Config/TemplateConfigCreatorTest.cs index 0c98b7f3..4f9bd400 100644 --- a/src/tests/Recyclarr.Cli.Tests/Processors/Config/TemplateConfigCreatorTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/Processors/Config/TemplateConfigCreatorTest.cs @@ -1,7 +1,6 @@ using System.IO.Abstractions; using Recyclarr.Cli.Console.Settings; using Recyclarr.Cli.Processors.Config; -using Recyclarr.Cli.TestLibrary; using Recyclarr.Platform; using Recyclarr.TrashGuide; @@ -9,7 +8,7 @@ namespace Recyclarr.Cli.Tests.Processors.Config; [TestFixture] [Parallelizable(ParallelScope.All)] -public class TemplateConfigCreatorTest : CliIntegrationFixture +public class TemplateConfigCreatorTest { [Test, AutoMockData] public void Can_handle_returns_true_with_templates( diff --git a/src/tests/Recyclarr.Cli.Tests/Processors/ConfigCreationProcessorTest.cs b/src/tests/Recyclarr.Cli.Tests/Processors/ConfigCreationProcessorTest.cs index 7ab20aa8..f143181b 100644 --- a/src/tests/Recyclarr.Cli.Tests/Processors/ConfigCreationProcessorTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/Processors/ConfigCreationProcessorTest.cs @@ -2,8 +2,8 @@ using System.Diagnostics.CodeAnalysis; using Autofac.Extras.Ordering; using AutoFixture; using Recyclarr.Cli.Console.Commands; +using Recyclarr.Cli.Processors; using Recyclarr.Cli.Processors.Config; -using Recyclarr.TrashLib.ExceptionTypes; namespace Recyclarr.Cli.Tests.Processors; diff --git a/src/tests/Recyclarr.Cli.Tests/Processors/ConfigTemplateListerTest.cs b/src/tests/Recyclarr.Cli.Tests/Processors/ConfigTemplateListerTest.cs index b8e5983f..849a97e7 100644 --- a/src/tests/Recyclarr.Cli.Tests/Processors/ConfigTemplateListerTest.cs +++ b/src/tests/Recyclarr.Cli.Tests/Processors/ConfigTemplateListerTest.cs @@ -3,14 +3,13 @@ using Recyclarr.Cli.Console.Commands; using Recyclarr.Cli.Processors.Config; using Recyclarr.Common; using Recyclarr.TrashGuide; -using Recyclarr.TrashLib.TestLibrary; using Spectre.Console.Testing; namespace Recyclarr.Cli.Tests.Processors; [TestFixture] [Parallelizable(ParallelScope.All)] -public class ConfigTemplateListerTest : TrashLibIntegrationFixture +public class ConfigTemplateListerTest { [Test, AutoMockData] public void Hidden_templates_are_not_rendered( diff --git a/src/tests/Recyclarr.Cli.Tests/Recyclarr.Cli.Tests.csproj b/src/tests/Recyclarr.Cli.Tests/Recyclarr.Cli.Tests.csproj index 53f3932f..5b11b013 100644 --- a/src/tests/Recyclarr.Cli.Tests/Recyclarr.Cli.Tests.csproj +++ b/src/tests/Recyclarr.Cli.Tests/Recyclarr.Cli.Tests.csproj @@ -1,11 +1,7 @@ - - - - - - + + diff --git a/src/tests/Recyclarr.Common.TestLibrary/Recyclarr.Common.TestLibrary.csproj b/src/tests/Recyclarr.Common.TestLibrary/Recyclarr.Common.TestLibrary.csproj deleted file mode 100644 index 83e96c5d..00000000 --- a/src/tests/Recyclarr.Common.TestLibrary/Recyclarr.Common.TestLibrary.csproj +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/tests/Recyclarr.Common.Tests/Recyclarr.Common.Tests.csproj b/src/tests/Recyclarr.Common.Tests/Recyclarr.Common.Tests.csproj deleted file mode 100644 index 2b482c14..00000000 --- a/src/tests/Recyclarr.Common.Tests/Recyclarr.Common.Tests.csproj +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/src/tests/Recyclarr.Config.TestLibrary/ConfigIntegrationFixture.cs b/src/tests/Recyclarr.Config.TestLibrary/ConfigIntegrationFixture.cs deleted file mode 100644 index 5363ef16..00000000 --- a/src/tests/Recyclarr.Config.TestLibrary/ConfigIntegrationFixture.cs +++ /dev/null @@ -1,20 +0,0 @@ -using Autofac; -using Recyclarr.TrashGuide; -using Recyclarr.TrashLib.TestLibrary; -using Recyclarr.Yaml; - -namespace Recyclarr.Config.TestLibrary; - -[FixtureLifeCycle(LifeCycle.InstancePerTestCase)] -public abstract class ConfigIntegrationFixture : TrashLibIntegrationFixture -{ - protected override void RegisterTypes(ContainerBuilder builder) - { - base.RegisterTypes(builder); - builder.RegisterModule(); - - // dependencies - builder.RegisterModule(); - builder.RegisterModule(); - } -} diff --git a/src/tests/Recyclarr.Config.TestLibrary/Recyclarr.Config.TestLibrary.csproj b/src/tests/Recyclarr.Config.TestLibrary/Recyclarr.Config.TestLibrary.csproj deleted file mode 100644 index d6a92980..00000000 --- a/src/tests/Recyclarr.Config.TestLibrary/Recyclarr.Config.TestLibrary.csproj +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/tests/Recyclarr.Config.Tests/Recyclarr.Config.Tests.csproj b/src/tests/Recyclarr.Config.Tests/Recyclarr.Config.Tests.csproj deleted file mode 100644 index f419183a..00000000 --- a/src/tests/Recyclarr.Config.Tests/Recyclarr.Config.Tests.csproj +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/tests/Recyclarr.Json.Tests/BulkJsonLoaderIntegrationTest.cs b/src/tests/Recyclarr.IntegrationTests/BulkJsonLoaderIntegrationTest.cs similarity index 93% rename from src/tests/Recyclarr.Json.Tests/BulkJsonLoaderIntegrationTest.cs rename to src/tests/Recyclarr.IntegrationTests/BulkJsonLoaderIntegrationTest.cs index 8edac392..457d2160 100644 --- a/src/tests/Recyclarr.Json.Tests/BulkJsonLoaderIntegrationTest.cs +++ b/src/tests/Recyclarr.IntegrationTests/BulkJsonLoaderIntegrationTest.cs @@ -1,13 +1,12 @@ using System.Diagnostics.CodeAnalysis; using System.IO.Abstractions; using Recyclarr.Json.Loading; -using Recyclarr.Json.TestLibrary; -namespace Recyclarr.Json.Tests; +namespace Recyclarr.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class BulkJsonLoaderIntegrationTest : JsonIntegrationFixture +public class BulkJsonLoaderIntegrationTest : IntegrationTestFixture { [SuppressMessage("ReSharper", "NotAccessedPositionalProperty.Local")] private sealed record TestGuideObject(string TrashId, int TrashScore, string Name); diff --git a/src/tests/Recyclarr.Config.Tests/Parsing/ConfigSaverTest.cs b/src/tests/Recyclarr.IntegrationTests/ConfigSaverTest.cs similarity index 93% rename from src/tests/Recyclarr.Config.Tests/Parsing/ConfigSaverTest.cs rename to src/tests/Recyclarr.IntegrationTests/ConfigSaverTest.cs index 9c8a685b..4ea1eb04 100644 --- a/src/tests/Recyclarr.Config.Tests/Parsing/ConfigSaverTest.cs +++ b/src/tests/Recyclarr.IntegrationTests/ConfigSaverTest.cs @@ -1,13 +1,12 @@ using System.IO.Abstractions; using Recyclarr.Common.Extensions; using Recyclarr.Config.Parsing; -using Recyclarr.Config.TestLibrary; -namespace Recyclarr.Config.Tests.Parsing; +namespace Recyclarr.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class ConfigSaverTest : ConfigIntegrationFixture +public class ConfigSaverTest : IntegrationTestFixture { [Test] public void Replace_file_when_already_exists() diff --git a/src/tests/Recyclarr.Config.Tests/Services/ConfigTemplateGuideServiceTest.cs b/src/tests/Recyclarr.IntegrationTests/ConfigTemplateGuideServiceIntegrationTest.cs similarity index 86% rename from src/tests/Recyclarr.Config.Tests/Services/ConfigTemplateGuideServiceTest.cs rename to src/tests/Recyclarr.IntegrationTests/ConfigTemplateGuideServiceIntegrationTest.cs index de0c75d7..f98afd94 100644 --- a/src/tests/Recyclarr.Config.Tests/Services/ConfigTemplateGuideServiceTest.cs +++ b/src/tests/Recyclarr.IntegrationTests/ConfigTemplateGuideServiceIntegrationTest.cs @@ -1,15 +1,15 @@ using System.IO.Abstractions; using Recyclarr.Common; -using Recyclarr.Common.TestLibrary; using Recyclarr.Repo; +using Recyclarr.TestLibrary; +using Recyclarr.TestLibrary.AutoFixture; using Recyclarr.TrashGuide; -using Recyclarr.Config.TestLibrary; -namespace Recyclarr.Config.Tests.Services; +namespace Recyclarr.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class ConfigTemplateGuideServiceTest : ConfigIntegrationFixture +public class ConfigTemplateGuideServiceIntegrationTest : IntegrationTestFixture { [Test, AutoMockData] public void Throw_when_templates_dir_does_not_exist( @@ -25,7 +25,7 @@ public class ConfigTemplateGuideServiceTest : ConfigIntegrationFixture { var repo = Resolve(); var templateDir = repo.Path; - Fs.AddSameFileFromEmbeddedResource(templateDir.File("templates.json"), typeof(ConfigTemplateGuideServiceTest)); + Fs.AddSameFileFromEmbeddedResource(templateDir.File("templates.json"), typeof(ConfigTemplateGuideServiceIntegrationTest)); TemplatePath MakeTemplatePath(SupportedServices service, string id, string path) { diff --git a/src/tests/Recyclarr.Config.Tests/Parsing/ConfigurationLoaderEnvVarTest.cs b/src/tests/Recyclarr.IntegrationTests/ConfigurationLoaderEnvVarTest.cs similarity index 96% rename from src/tests/Recyclarr.Config.Tests/Parsing/ConfigurationLoaderEnvVarTest.cs rename to src/tests/Recyclarr.IntegrationTests/ConfigurationLoaderEnvVarTest.cs index e0dfc7c7..57b4da21 100644 --- a/src/tests/Recyclarr.Config.Tests/Parsing/ConfigurationLoaderEnvVarTest.cs +++ b/src/tests/Recyclarr.IntegrationTests/ConfigurationLoaderEnvVarTest.cs @@ -1,12 +1,11 @@ using Recyclarr.Common; using Recyclarr.Config.Parsing; -using Recyclarr.Config.TestLibrary; -namespace Recyclarr.Config.Tests.Parsing; +namespace Recyclarr.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class ConfigurationLoaderEnvVarTest : ConfigIntegrationFixture +public class ConfigurationLoaderEnvVarTest : IntegrationTestFixture { [Test] public void Test_successful_environment_variable_loading() diff --git a/src/tests/Recyclarr.Config.Tests/Parsing/ConfigurationLoaderSecretsTest.cs b/src/tests/Recyclarr.IntegrationTests/ConfigurationLoaderSecretsTest.cs similarity index 96% rename from src/tests/Recyclarr.Config.Tests/Parsing/ConfigurationLoaderSecretsTest.cs rename to src/tests/Recyclarr.IntegrationTests/ConfigurationLoaderSecretsTest.cs index d9c11939..d04080ff 100644 --- a/src/tests/Recyclarr.Config.Tests/Parsing/ConfigurationLoaderSecretsTest.cs +++ b/src/tests/Recyclarr.IntegrationTests/ConfigurationLoaderSecretsTest.cs @@ -1,13 +1,13 @@ using System.IO.Abstractions; using Recyclarr.Common; +using Recyclarr.Config; using Recyclarr.Config.Parsing; -using Recyclarr.Config.TestLibrary; -namespace Recyclarr.Config.Tests.Parsing; +namespace Recyclarr.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class ConfigurationLoaderSecretsTest : ConfigIntegrationFixture +public class ConfigurationLoaderSecretsTest : IntegrationTestFixture { [Test] public void Test_secret_loading() diff --git a/src/tests/Recyclarr.Config.Tests/Parsing/ConfigurationLoaderTest.cs b/src/tests/Recyclarr.IntegrationTests/ConfigurationLoaderTest.cs similarity index 97% rename from src/tests/Recyclarr.Config.Tests/Parsing/ConfigurationLoaderTest.cs rename to src/tests/Recyclarr.IntegrationTests/ConfigurationLoaderTest.cs index dc7d920e..8c7ffd41 100644 --- a/src/tests/Recyclarr.Config.Tests/Parsing/ConfigurationLoaderTest.cs +++ b/src/tests/Recyclarr.IntegrationTests/ConfigurationLoaderTest.cs @@ -5,16 +5,16 @@ using Autofac; using FluentValidation; using Recyclarr.Common; using Recyclarr.Common.Extensions; +using Recyclarr.Config; using Recyclarr.Config.Models; -using Recyclarr.TestLibrary.Autofac; using Recyclarr.Config.Parsing; -using Recyclarr.Config.TestLibrary; +using Recyclarr.TestLibrary.Autofac; -namespace Recyclarr.Config.Tests.Parsing; +namespace Recyclarr.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class ConfigurationLoaderTest : ConfigIntegrationFixture +public class ConfigurationLoaderTest : IntegrationTestFixture { private static Func GetResourceData(string file) { diff --git a/src/tests/Recyclarr.Config.Tests/ConfigurationRegistryTest.cs b/src/tests/Recyclarr.IntegrationTests/ConfigurationRegistryTest.cs similarity index 96% rename from src/tests/Recyclarr.Config.Tests/ConfigurationRegistryTest.cs rename to src/tests/Recyclarr.IntegrationTests/ConfigurationRegistryTest.cs index d6da0ebf..3aa336a5 100644 --- a/src/tests/Recyclarr.Config.Tests/ConfigurationRegistryTest.cs +++ b/src/tests/Recyclarr.IntegrationTests/ConfigurationRegistryTest.cs @@ -1,13 +1,13 @@ +using Recyclarr.Config; using Recyclarr.Config.ExceptionTypes; using Recyclarr.Config.Models; using Recyclarr.Config.Parsing.ErrorHandling; -using Recyclarr.Config.TestLibrary; -namespace Recyclarr.Config.Tests; +namespace Recyclarr.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class ConfigurationRegistryTest : ConfigIntegrationFixture +public class ConfigurationRegistryTest : IntegrationTestFixture { [Test] public void Use_explicit_paths_instead_of_default() diff --git a/src/tests/Recyclarr.TrashGuide.Tests/CustomFormat/CustomFormatLoaderIntegrationTest.cs b/src/tests/Recyclarr.IntegrationTests/CustomFormatLoaderIntegrationTest.cs similarity index 81% rename from src/tests/Recyclarr.TrashGuide.Tests/CustomFormat/CustomFormatLoaderIntegrationTest.cs rename to src/tests/Recyclarr.IntegrationTests/CustomFormatLoaderIntegrationTest.cs index c685729f..206760a5 100644 --- a/src/tests/Recyclarr.TrashGuide.Tests/CustomFormat/CustomFormatLoaderIntegrationTest.cs +++ b/src/tests/Recyclarr.IntegrationTests/CustomFormatLoaderIntegrationTest.cs @@ -1,14 +1,13 @@ using System.IO.Abstractions; using System.Text.Json; +using Recyclarr.Tests.TestLibrary; using Recyclarr.TrashGuide.CustomFormat; -using Recyclarr.TrashGuide.TestLibrary; -using Recyclarr.TrashLib.TestLibrary; -namespace Recyclarr.TrashGuide.Tests.CustomFormat; +namespace Recyclarr.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class CustomFormatLoaderIntegrationTest : GuideIntegrationFixture +public class CustomFormatLoaderIntegrationTest : IntegrationTestFixture { [Test] public void Get_custom_format_json_works() diff --git a/src/tests/Recyclarr.Cli.Tests/Pipelines/CustomFormat/Api/CustomFormatServiceTest.cs b/src/tests/Recyclarr.IntegrationTests/CustomFormatServiceTest.cs similarity index 63% rename from src/tests/Recyclarr.Cli.Tests/Pipelines/CustomFormat/Api/CustomFormatServiceTest.cs rename to src/tests/Recyclarr.IntegrationTests/CustomFormatServiceTest.cs index 683c6a03..b66ae20a 100644 --- a/src/tests/Recyclarr.Cli.Tests/Pipelines/CustomFormat/Api/CustomFormatServiceTest.cs +++ b/src/tests/Recyclarr.IntegrationTests/CustomFormatServiceTest.cs @@ -1,17 +1,16 @@ using Flurl.Http.Testing; -using Recyclarr.Cli.TestLibrary; using Recyclarr.Common; using Recyclarr.Config.Models; using Recyclarr.ServarrApi.Services; -namespace Recyclarr.Cli.Tests.Pipelines.CustomFormat.Api; +namespace Recyclarr.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class CustomFormatServiceTest : CliIntegrationFixture +public class CustomFormatServiceTest : IntegrationTestFixture { - [Test, AutoMockData] - public async Task Get_can_parse_json(IServiceConfiguration config) + [Test] + public async Task Get_can_parse_json() { var resourceData = new ResourceDataReader(typeof(CustomFormatServiceTest), "Data"); var jsonBody = resourceData.ReadData("issue_178.json"); @@ -20,7 +19,7 @@ public class CustomFormatServiceTest : CliIntegrationFixture http.RespondWith(jsonBody); var sut = Resolve(); - var result = await sut.GetCustomFormats(config); + var result = await sut.GetCustomFormats(Substitute.ForPartsOf()); result.Should().HaveCountGreaterThan(5); } diff --git a/src/tests/Recyclarr.Config.Tests/Parsing/Data/Load_UsingStream_CorrectParsing.yml b/src/tests/Recyclarr.IntegrationTests/Data/Load_UsingStream_CorrectParsing.yml similarity index 100% rename from src/tests/Recyclarr.Config.Tests/Parsing/Data/Load_UsingStream_CorrectParsing.yml rename to src/tests/Recyclarr.IntegrationTests/Data/Load_UsingStream_CorrectParsing.yml diff --git a/src/tests/Recyclarr.TrashGuide.Tests/QualitySize/Data/invalid_quality_size.json b/src/tests/Recyclarr.IntegrationTests/Data/invalid_quality_size.json similarity index 100% rename from src/tests/Recyclarr.TrashGuide.Tests/QualitySize/Data/invalid_quality_size.json rename to src/tests/Recyclarr.IntegrationTests/Data/invalid_quality_size.json diff --git a/src/tests/Recyclarr.Cli.Tests/Pipelines/CustomFormat/Api/Data/issue_178.json b/src/tests/Recyclarr.IntegrationTests/Data/issue_178.json similarity index 100% rename from src/tests/Recyclarr.Cli.Tests/Pipelines/CustomFormat/Api/Data/issue_178.json rename to src/tests/Recyclarr.IntegrationTests/Data/issue_178.json diff --git a/src/tests/Recyclarr.TrashGuide.Tests/QualitySize/Data/quality_size.json b/src/tests/Recyclarr.IntegrationTests/Data/quality_size.json similarity index 100% rename from src/tests/Recyclarr.TrashGuide.Tests/QualitySize/Data/quality_size.json rename to src/tests/Recyclarr.IntegrationTests/Data/quality_size.json diff --git a/src/tests/Recyclarr.Config.Tests/Services/Data/templates.json b/src/tests/Recyclarr.IntegrationTests/Data/templates.json similarity index 100% rename from src/tests/Recyclarr.Config.Tests/Services/Data/templates.json rename to src/tests/Recyclarr.IntegrationTests/Data/templates.json diff --git a/src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/IncludePostProcessorIntegrationTest.cs b/src/tests/Recyclarr.IntegrationTests/IncludePostProcessorIntegrationTest.cs similarity index 97% rename from src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/IncludePostProcessorIntegrationTest.cs rename to src/tests/Recyclarr.IntegrationTests/IncludePostProcessorIntegrationTest.cs index d1c73a7b..ac719110 100644 --- a/src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/IncludePostProcessorIntegrationTest.cs +++ b/src/tests/Recyclarr.IntegrationTests/IncludePostProcessorIntegrationTest.cs @@ -2,13 +2,12 @@ using System.IO.Abstractions; using Recyclarr.Config.Parsing; using Recyclarr.Config.Parsing.PostProcessing; using Recyclarr.Config.Parsing.PostProcessing.ConfigMerging; -using Recyclarr.Config.TestLibrary; -namespace Recyclarr.Config.Tests.Parsing.PostProcessing; +namespace Recyclarr.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class IncludePostProcessorIntegrationTest : ConfigIntegrationFixture +public class IncludePostProcessorIntegrationTest : IntegrationTestFixture { [Test] public void No_change_when_no_includes() diff --git a/src/tests/Recyclarr.TestLibrary/IntegrationTestFixture.cs b/src/tests/Recyclarr.IntegrationTests/IntegrationTestFixture.cs similarity index 57% rename from src/tests/Recyclarr.TestLibrary/IntegrationTestFixture.cs rename to src/tests/Recyclarr.IntegrationTests/IntegrationTestFixture.cs index a0df24ee..5c77cad3 100644 --- a/src/tests/Recyclarr.TestLibrary/IntegrationTestFixture.cs +++ b/src/tests/Recyclarr.IntegrationTests/IntegrationTestFixture.cs @@ -1,12 +1,24 @@ using System.IO.Abstractions; using Autofac; +using Autofac.Extras.Ordering; using Autofac.Features.ResolveAnything; using Recyclarr.Common; +using Recyclarr.Compatibility; +using Recyclarr.Config; +using Recyclarr.Json; +using Recyclarr.Platform; +using Recyclarr.Repo; +using Recyclarr.ServarrApi; +using Recyclarr.Settings; +using Recyclarr.TestLibrary; using Recyclarr.TestLibrary.Autofac; +using Recyclarr.TrashGuide; +using Recyclarr.VersionControl; +using Recyclarr.Yaml; using Spectre.Console; using Spectre.Console.Testing; -namespace Recyclarr.TestLibrary; +namespace Recyclarr.IntegrationTests; [FixtureLifeCycle(LifeCycle.InstancePerTestCase)] public abstract class IntegrationTestFixture : IDisposable @@ -16,6 +28,7 @@ public abstract class IntegrationTestFixture : IDisposable protected MockFileSystem Fs { get; } protected TestConsole Console { get; } = new(); protected TestableLogger Logger { get; } = new(); + protected IAppPaths Paths { get; } protected IntegrationTestFixture() { @@ -24,6 +37,8 @@ public abstract class IntegrationTestFixture : IDisposable CreateDefaultTempDir = false }); + Paths = new AppPaths(Fs.CurrentDirectory().SubDirectory("test").SubDirectory("recyclarr")); + // Use Lazy because we shouldn't invoke virtual methods at construction time _container = new Lazy(() => { @@ -42,6 +57,20 @@ public abstract class IntegrationTestFixture : IDisposable /// protected virtual void RegisterTypes(ContainerBuilder builder) { + // Needed for Autofac.Extras.Ordering + builder.RegisterSource(); + + builder.RegisterModule(); + builder.RegisterModule(); + builder.RegisterModule(); + builder.RegisterModule(); + builder.RegisterModule(); + builder.RegisterModule(); + builder.RegisterModule(); + builder.RegisterModule(); + builder.RegisterModule(); + builder.RegisterModule(); + builder.RegisterModule(); } /// @@ -53,8 +82,16 @@ public abstract class IntegrationTestFixture : IDisposable builder.RegisterInstance(Fs).As(); builder.RegisterInstance(Console).As(); builder.RegisterInstance(Logger).As(); + builder.RegisterInstance(Paths).As(); builder.RegisterMockFor(); + builder.RegisterMockFor(); + builder.RegisterMockFor(); + builder.RegisterMockFor(m => + { + // By default, choose some extremely high number so that all the newest features are enabled. + m.GetVersion(default!).ReturnsForAnyArgs(_ => new Version("99.0.0.0")); + }); } protected T Resolve() where T : notnull @@ -65,12 +102,7 @@ public abstract class IntegrationTestFixture : IDisposable // ReSharper disable once VirtualMemberNeverOverridden.Global protected virtual void Dispose(bool disposing) { - if (!disposing) - { - return; - } - - if (!_container.IsValueCreated) + if (!disposing || !_container.IsValueCreated) { return; } diff --git a/src/tests/Recyclarr.TrashGuide.Tests/QualitySize/QualitySizeGuideParserTest.cs b/src/tests/Recyclarr.IntegrationTests/QualitySizeGuideParserTest.cs similarity index 87% rename from src/tests/Recyclarr.TrashGuide.Tests/QualitySize/QualitySizeGuideParserTest.cs rename to src/tests/Recyclarr.IntegrationTests/QualitySizeGuideParserTest.cs index 99b91af1..ca070835 100644 --- a/src/tests/Recyclarr.TrashGuide.Tests/QualitySize/QualitySizeGuideParserTest.cs +++ b/src/tests/Recyclarr.IntegrationTests/QualitySizeGuideParserTest.cs @@ -1,14 +1,13 @@ using System.IO.Abstractions; using Recyclarr.Common.Extensions; -using Recyclarr.Common.TestLibrary; +using Recyclarr.TestLibrary; using Recyclarr.TrashGuide.QualitySize; -using Recyclarr.TrashGuide.TestLibrary; -namespace Recyclarr.TrashGuide.Tests.QualitySize; +namespace Recyclarr.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class QualitySizeGuideParserTest : GuideIntegrationFixture +public class QualitySizeGuideParserTest : IntegrationTestFixture { [Test] public void Get_valid_data() diff --git a/src/tests/Recyclarr.TrashGuide.Tests/QualitySize/QualitySizeGuideServiceTest.cs b/src/tests/Recyclarr.IntegrationTests/QualitySizeGuideServiceTest.cs similarity index 86% rename from src/tests/Recyclarr.TrashGuide.Tests/QualitySize/QualitySizeGuideServiceTest.cs rename to src/tests/Recyclarr.IntegrationTests/QualitySizeGuideServiceTest.cs index d0534c42..c0045023 100644 --- a/src/tests/Recyclarr.TrashGuide.Tests/QualitySize/QualitySizeGuideServiceTest.cs +++ b/src/tests/Recyclarr.IntegrationTests/QualitySizeGuideServiceTest.cs @@ -1,16 +1,15 @@ using System.IO.Abstractions; using Recyclarr.Common; using Recyclarr.Common.Extensions; -using Recyclarr.Common.TestLibrary; using Recyclarr.Repo; +using Recyclarr.TestLibrary; using Recyclarr.TrashGuide.QualitySize; -using Recyclarr.TrashGuide.TestLibrary; -namespace Recyclarr.TrashGuide.Tests.QualitySize; +namespace Recyclarr.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class QualitySizeGuideServiceTest : GuideIntegrationFixture +public class QualitySizeGuideServiceTest : IntegrationTestFixture { [TestCase(SupportedServices.Sonarr, "sonarr")] [TestCase(SupportedServices.Radarr, "radarr")] diff --git a/src/tests/Recyclarr.IntegrationTests/Recyclarr.IntegrationTests.csproj b/src/tests/Recyclarr.IntegrationTests/Recyclarr.IntegrationTests.csproj new file mode 100644 index 00000000..9393cb96 --- /dev/null +++ b/src/tests/Recyclarr.IntegrationTests/Recyclarr.IntegrationTests.csproj @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/tests/Recyclarr.Config.Tests/YamlConfigValidatorTest.cs b/src/tests/Recyclarr.IntegrationTests/YamlConfigValidatorTest.cs similarity index 97% rename from src/tests/Recyclarr.Config.Tests/YamlConfigValidatorTest.cs rename to src/tests/Recyclarr.IntegrationTests/YamlConfigValidatorTest.cs index e797d669..f533eafe 100644 --- a/src/tests/Recyclarr.Config.Tests/YamlConfigValidatorTest.cs +++ b/src/tests/Recyclarr.IntegrationTests/YamlConfigValidatorTest.cs @@ -1,13 +1,12 @@ using FluentValidation.TestHelper; using Recyclarr.Config.Models; using Recyclarr.Config.Parsing; -using Recyclarr.Config.TestLibrary; -namespace Recyclarr.Config.Tests; +namespace Recyclarr.IntegrationTests; [TestFixture] [Parallelizable(ParallelScope.All)] -public class YamlConfigValidatorTest : ConfigIntegrationFixture +public class YamlConfigValidatorTest : IntegrationTestFixture { [Test] public void Validation_succeeds() diff --git a/src/tests/Recyclarr.Json.TestLibrary/JsonIntegrationFixture.cs b/src/tests/Recyclarr.Json.TestLibrary/JsonIntegrationFixture.cs deleted file mode 100644 index 486f2347..00000000 --- a/src/tests/Recyclarr.Json.TestLibrary/JsonIntegrationFixture.cs +++ /dev/null @@ -1,14 +0,0 @@ -using Autofac; -using Recyclarr.TestLibrary; - -namespace Recyclarr.Json.TestLibrary; - -[FixtureLifeCycle(LifeCycle.InstancePerTestCase)] -public abstract class JsonIntegrationFixture : IntegrationTestFixture -{ - protected override void RegisterTypes(ContainerBuilder builder) - { - base.RegisterTypes(builder); - builder.RegisterModule(); - } -} diff --git a/src/tests/Recyclarr.Json.TestLibrary/Recyclarr.Json.TestLibrary.csproj b/src/tests/Recyclarr.Json.TestLibrary/Recyclarr.Json.TestLibrary.csproj deleted file mode 100644 index 1573e5c7..00000000 --- a/src/tests/Recyclarr.Json.TestLibrary/Recyclarr.Json.TestLibrary.csproj +++ /dev/null @@ -1,14 +0,0 @@ - - - - net7.0 - enable - enable - - - - - - - - diff --git a/src/tests/Recyclarr.Json.Tests/Recyclarr.Json.Tests.csproj b/src/tests/Recyclarr.Json.Tests/Recyclarr.Json.Tests.csproj deleted file mode 100644 index 6f3060ab..00000000 --- a/src/tests/Recyclarr.Json.Tests/Recyclarr.Json.Tests.csproj +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/src/tests/Recyclarr.TestLibrary.Tests/Recyclarr.TestLibrary.Tests.csproj b/src/tests/Recyclarr.TestLibrary.Tests/Recyclarr.TestLibrary.Tests.csproj deleted file mode 100644 index 4ef71482..00000000 --- a/src/tests/Recyclarr.TestLibrary.Tests/Recyclarr.TestLibrary.Tests.csproj +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/src/tests/Recyclarr.Common.TestLibrary/CommonMockFileSystemExtensions.cs b/src/tests/Recyclarr.TestLibrary/MockFileSystemExtensions.cs similarity index 95% rename from src/tests/Recyclarr.Common.TestLibrary/CommonMockFileSystemExtensions.cs rename to src/tests/Recyclarr.TestLibrary/MockFileSystemExtensions.cs index d8afc537..326180c3 100644 --- a/src/tests/Recyclarr.Common.TestLibrary/CommonMockFileSystemExtensions.cs +++ b/src/tests/Recyclarr.TestLibrary/MockFileSystemExtensions.cs @@ -1,9 +1,9 @@ using System.IO.Abstractions; using System.Reflection; -namespace Recyclarr.Common.TestLibrary; +namespace Recyclarr.TestLibrary; -public static class CommonMockFileSystemExtensions +public static class MockFileSystemExtensions { public static void AddFileFromEmbeddedResource( this MockFileSystem fs, diff --git a/src/tests/Recyclarr.TrashLib.TestLibrary/NewCf.cs b/src/tests/Recyclarr.Tests.TestLibrary/NewCf.cs similarity index 95% rename from src/tests/Recyclarr.TrashLib.TestLibrary/NewCf.cs rename to src/tests/Recyclarr.Tests.TestLibrary/NewCf.cs index 803a390b..75ee2d96 100644 --- a/src/tests/Recyclarr.TrashLib.TestLibrary/NewCf.cs +++ b/src/tests/Recyclarr.Tests.TestLibrary/NewCf.cs @@ -1,6 +1,6 @@ using Recyclarr.TrashGuide.CustomFormat; -namespace Recyclarr.TrashLib.TestLibrary; +namespace Recyclarr.Tests.TestLibrary; public static class NewCf { diff --git a/src/tests/Recyclarr.TrashLib.TestLibrary/NewConfig.cs b/src/tests/Recyclarr.Tests.TestLibrary/NewConfig.cs similarity index 89% rename from src/tests/Recyclarr.TrashLib.TestLibrary/NewConfig.cs rename to src/tests/Recyclarr.Tests.TestLibrary/NewConfig.cs index d7ca3453..332a11b0 100644 --- a/src/tests/Recyclarr.TrashLib.TestLibrary/NewConfig.cs +++ b/src/tests/Recyclarr.Tests.TestLibrary/NewConfig.cs @@ -1,6 +1,6 @@ using Recyclarr.Config.Models; -namespace Recyclarr.TrashLib.TestLibrary; +namespace Recyclarr.Tests.TestLibrary; public static class NewConfig { diff --git a/src/tests/Recyclarr.TrashGuide.Tests/Recyclarr.TrashGuide.Tests.csproj b/src/tests/Recyclarr.Tests.TestLibrary/Recyclarr.Tests.TestLibrary.csproj similarity index 69% rename from src/tests/Recyclarr.TrashGuide.Tests/Recyclarr.TrashGuide.Tests.csproj rename to src/tests/Recyclarr.Tests.TestLibrary/Recyclarr.Tests.TestLibrary.csproj index 1a48138d..8251b64a 100644 --- a/src/tests/Recyclarr.TrashGuide.Tests/Recyclarr.TrashGuide.Tests.csproj +++ b/src/tests/Recyclarr.Tests.TestLibrary/Recyclarr.Tests.TestLibrary.csproj @@ -1,7 +1,7 @@ + - diff --git a/src/tests/Recyclarr.TrashLib.TestLibrary/TestAppPaths.cs b/src/tests/Recyclarr.Tests.TestLibrary/TestAppPaths.cs similarity index 84% rename from src/tests/Recyclarr.TrashLib.TestLibrary/TestAppPaths.cs rename to src/tests/Recyclarr.Tests.TestLibrary/TestAppPaths.cs index 9ecdb827..beb75864 100644 --- a/src/tests/Recyclarr.TrashLib.TestLibrary/TestAppPaths.cs +++ b/src/tests/Recyclarr.Tests.TestLibrary/TestAppPaths.cs @@ -1,7 +1,7 @@ using System.IO.Abstractions; using Recyclarr.Platform; -namespace Recyclarr.TrashLib.TestLibrary; +namespace Recyclarr.Tests.TestLibrary; public sealed class TestAppPaths : AppPaths { diff --git a/src/tests/Recyclarr.Common.Tests/DefaultDataFile.txt b/src/tests/Recyclarr.Tests/Common/DefaultDataFile.txt similarity index 100% rename from src/tests/Recyclarr.Common.Tests/DefaultDataFile.txt rename to src/tests/Recyclarr.Tests/Common/DefaultDataFile.txt diff --git a/src/tests/Recyclarr.Common.Tests/Extensions/DictionaryExtensionsTest.cs b/src/tests/Recyclarr.Tests/Common/Extensions/DictionaryExtensionsTest.cs similarity index 97% rename from src/tests/Recyclarr.Common.Tests/Extensions/DictionaryExtensionsTest.cs rename to src/tests/Recyclarr.Tests/Common/Extensions/DictionaryExtensionsTest.cs index 2a4f6dcd..5ba27491 100644 --- a/src/tests/Recyclarr.Common.Tests/Extensions/DictionaryExtensionsTest.cs +++ b/src/tests/Recyclarr.Tests/Common/Extensions/DictionaryExtensionsTest.cs @@ -1,6 +1,6 @@ using Recyclarr.Common.Extensions; -namespace Recyclarr.Common.Tests.Extensions; +namespace Recyclarr.Tests.Common.Extensions; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Common.Tests/Extensions/FileSystemExtensionsTest.cs b/src/tests/Recyclarr.Tests/Common/Extensions/FileSystemExtensionsTest.cs similarity index 98% rename from src/tests/Recyclarr.Common.Tests/Extensions/FileSystemExtensionsTest.cs rename to src/tests/Recyclarr.Tests/Common/Extensions/FileSystemExtensionsTest.cs index ed478181..696b5043 100644 --- a/src/tests/Recyclarr.Common.Tests/Extensions/FileSystemExtensionsTest.cs +++ b/src/tests/Recyclarr.Tests/Common/Extensions/FileSystemExtensionsTest.cs @@ -1,9 +1,10 @@ using System.IO.Abstractions; using System.Text.RegularExpressions; +using Recyclarr.Common; using Recyclarr.Common.Extensions; using Recyclarr.TestLibrary; -namespace Recyclarr.Common.Tests.Extensions; +namespace Recyclarr.Tests.Common.Extensions; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Common.Tests/Extensions/StringExtensionsTest.cs b/src/tests/Recyclarr.Tests/Common/Extensions/StringExtensionsTest.cs similarity index 93% rename from src/tests/Recyclarr.Common.Tests/Extensions/StringExtensionsTest.cs rename to src/tests/Recyclarr.Tests/Common/Extensions/StringExtensionsTest.cs index 9ba87bd5..6003fcb9 100644 --- a/src/tests/Recyclarr.Common.Tests/Extensions/StringExtensionsTest.cs +++ b/src/tests/Recyclarr.Tests/Common/Extensions/StringExtensionsTest.cs @@ -1,6 +1,6 @@ using Recyclarr.Common.Extensions; -namespace Recyclarr.Common.Tests.Extensions; +namespace Recyclarr.Tests.Common.Extensions; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Common.Tests/ResourceDataReaderTest.cs b/src/tests/Recyclarr.Tests/Common/ResourceDataReaderTest.cs similarity index 72% rename from src/tests/Recyclarr.Common.Tests/ResourceDataReaderTest.cs rename to src/tests/Recyclarr.Tests/Common/ResourceDataReaderTest.cs index 914d550b..77ba712f 100644 --- a/src/tests/Recyclarr.Common.Tests/ResourceDataReaderTest.cs +++ b/src/tests/Recyclarr.Tests/Common/ResourceDataReaderTest.cs @@ -1,4 +1,6 @@ -namespace Recyclarr.Common.Tests; +using Recyclarr.Common; + +namespace Recyclarr.Tests.Common; [TestFixture] [Parallelizable(ParallelScope.All)] @@ -7,7 +9,7 @@ public class ResourceDataReaderTest [Test] public void GetResourceData_DefaultDir_ReturnResourceData() { - var testData = new ResourceDataReader(typeof(ResourceDataReaderTest)); + var testData = new ResourceDataReader(GetType()); var data = testData.ReadData("DefaultDataFile.txt"); data.Trim().Should().Be("DefaultDataFile"); } @@ -15,7 +17,7 @@ public class ResourceDataReaderTest [Test] public void GetResourceData_NonexistentFile_Throw() { - var testData = new ResourceDataReader(typeof(ResourceDataReaderTest)); + var testData = new ResourceDataReader(GetType()); Action act = () => testData.ReadData("DataFileWontBeFound.txt"); act.Should() @@ -26,7 +28,7 @@ public class ResourceDataReaderTest [Test] public void ReadData_ExplicitSubDir_ReturnResourceData() { - var testData = new ResourceDataReader(typeof(ResourceDataReaderTest), "TestData"); + var testData = new ResourceDataReader(GetType(), "TestData"); var data = testData.ReadData("DataFile.txt"); data.Trim().Should().Be("DataFile"); } diff --git a/src/tests/Recyclarr.Common.Tests/ScopedStateTest.cs b/src/tests/Recyclarr.Tests/Common/ScopedStateTest.cs similarity index 98% rename from src/tests/Recyclarr.Common.Tests/ScopedStateTest.cs rename to src/tests/Recyclarr.Tests/Common/ScopedStateTest.cs index cbcea27a..71c62a4c 100644 --- a/src/tests/Recyclarr.Common.Tests/ScopedStateTest.cs +++ b/src/tests/Recyclarr.Tests/Common/ScopedStateTest.cs @@ -1,4 +1,6 @@ -namespace Recyclarr.Common.Tests; +using Recyclarr.Common; + +namespace Recyclarr.Tests.Common; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Common.Tests/TestData/DataFile.txt b/src/tests/Recyclarr.Tests/Common/TestData/DataFile.txt similarity index 100% rename from src/tests/Recyclarr.Common.Tests/TestData/DataFile.txt rename to src/tests/Recyclarr.Tests/Common/TestData/DataFile.txt diff --git a/src/tests/Recyclarr.TrashLib.Tests/Compatibility/Sonarr/SonarrCapabilityEnforcerTest.cs b/src/tests/Recyclarr.Tests/Compatibility/Sonarr/SonarrCapabilityEnforcerTest.cs similarity index 93% rename from src/tests/Recyclarr.TrashLib.Tests/Compatibility/Sonarr/SonarrCapabilityEnforcerTest.cs rename to src/tests/Recyclarr.Tests/Compatibility/Sonarr/SonarrCapabilityEnforcerTest.cs index df492dbe..04b19c60 100644 --- a/src/tests/Recyclarr.TrashLib.Tests/Compatibility/Sonarr/SonarrCapabilityEnforcerTest.cs +++ b/src/tests/Recyclarr.Tests/Compatibility/Sonarr/SonarrCapabilityEnforcerTest.cs @@ -1,9 +1,9 @@ +using Recyclarr.Compatibility; +using Recyclarr.Compatibility.Sonarr; using Recyclarr.Config.Models; -using Recyclarr.TrashLib.Compatibility.Sonarr; -using Recyclarr.TrashLib.ExceptionTypes; -using Recyclarr.TrashLib.TestLibrary; +using Recyclarr.Tests.TestLibrary; -namespace Recyclarr.TrashLib.Tests.Compatibility.Sonarr; +namespace Recyclarr.Tests.Compatibility.Sonarr; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Config.Tests/ConfigExtensionsTest.cs b/src/tests/Recyclarr.Tests/Config/ConfigExtensionsTest.cs similarity index 98% rename from src/tests/Recyclarr.Config.Tests/ConfigExtensionsTest.cs rename to src/tests/Recyclarr.Tests/Config/ConfigExtensionsTest.cs index e84bec01..6589d483 100644 --- a/src/tests/Recyclarr.Config.Tests/ConfigExtensionsTest.cs +++ b/src/tests/Recyclarr.Tests/Config/ConfigExtensionsTest.cs @@ -1,7 +1,8 @@ using Recyclarr.Common; +using Recyclarr.Config; using Recyclarr.Config.Models; -namespace Recyclarr.Config.Tests; +namespace Recyclarr.Tests.Config; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Config.Tests/EnvironmentVariables/EnvironmentVariableNotDefinedExceptionTest.cs b/src/tests/Recyclarr.Tests/Config/EnvironmentVariables/EnvironmentVariableNotDefinedExceptionTest.cs similarity index 87% rename from src/tests/Recyclarr.Config.Tests/EnvironmentVariables/EnvironmentVariableNotDefinedExceptionTest.cs rename to src/tests/Recyclarr.Tests/Config/EnvironmentVariables/EnvironmentVariableNotDefinedExceptionTest.cs index 6771c9de..8a8b99eb 100644 --- a/src/tests/Recyclarr.Config.Tests/EnvironmentVariables/EnvironmentVariableNotDefinedExceptionTest.cs +++ b/src/tests/Recyclarr.Tests/Config/EnvironmentVariables/EnvironmentVariableNotDefinedExceptionTest.cs @@ -1,6 +1,6 @@ using Recyclarr.Config.EnvironmentVariables; -namespace Recyclarr.Config.Tests.EnvironmentVariables; +namespace Recyclarr.Tests.Config.EnvironmentVariables; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Config.Tests/Parsing/ConfigValidationExecutorTest.cs b/src/tests/Recyclarr.Tests/Config/Parsing/ConfigValidationExecutorTest.cs similarity index 94% rename from src/tests/Recyclarr.Config.Tests/Parsing/ConfigValidationExecutorTest.cs rename to src/tests/Recyclarr.Tests/Config/Parsing/ConfigValidationExecutorTest.cs index f5478943..9e36c4f9 100644 --- a/src/tests/Recyclarr.Config.Tests/Parsing/ConfigValidationExecutorTest.cs +++ b/src/tests/Recyclarr.Tests/Config/Parsing/ConfigValidationExecutorTest.cs @@ -2,9 +2,9 @@ using FluentValidation; using FluentValidation.Results; using Recyclarr.Common.FluentValidation; using Recyclarr.Config.Parsing; -using Recyclarr.TrashLib.TestLibrary; +using Recyclarr.Tests.TestLibrary; -namespace Recyclarr.Config.Tests.Parsing; +namespace Recyclarr.Tests.Config.Parsing; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Config.Tests/Parsing/ConfigYamlDataObjectsValidationTest.cs b/src/tests/Recyclarr.Tests/Config/Parsing/ConfigYamlDataObjectsValidationTest.cs similarity index 99% rename from src/tests/Recyclarr.Config.Tests/Parsing/ConfigYamlDataObjectsValidationTest.cs rename to src/tests/Recyclarr.Tests/Config/Parsing/ConfigYamlDataObjectsValidationTest.cs index 097312ad..188046c5 100644 --- a/src/tests/Recyclarr.Config.Tests/Parsing/ConfigYamlDataObjectsValidationTest.cs +++ b/src/tests/Recyclarr.Tests/Config/Parsing/ConfigYamlDataObjectsValidationTest.cs @@ -1,7 +1,7 @@ using FluentValidation.TestHelper; using Recyclarr.Config.Parsing; -namespace Recyclarr.Config.Tests.Parsing; +namespace Recyclarr.Tests.Config.Parsing; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Config.Tests/Parsing/ConfigYamlMapperProfileTest.cs b/src/tests/Recyclarr.Tests/Config/Parsing/ConfigYamlMapperProfileTest.cs similarity index 96% rename from src/tests/Recyclarr.Config.Tests/Parsing/ConfigYamlMapperProfileTest.cs rename to src/tests/Recyclarr.Tests/Config/Parsing/ConfigYamlMapperProfileTest.cs index c3b6add7..f258b9f4 100644 --- a/src/tests/Recyclarr.Config.Tests/Parsing/ConfigYamlMapperProfileTest.cs +++ b/src/tests/Recyclarr.Tests/Config/Parsing/ConfigYamlMapperProfileTest.cs @@ -2,7 +2,7 @@ using AutoMapper; using Recyclarr.Config.Models; using Recyclarr.Config.Parsing; -namespace Recyclarr.Config.Tests.Parsing; +namespace Recyclarr.Tests.Config.Parsing; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Config.Tests/Parsing/ConfigurationFinderTest.cs b/src/tests/Recyclarr.Tests/Config/Parsing/ConfigurationFinderTest.cs similarity index 98% rename from src/tests/Recyclarr.Config.Tests/Parsing/ConfigurationFinderTest.cs rename to src/tests/Recyclarr.Tests/Config/Parsing/ConfigurationFinderTest.cs index 8dccfa14..380cd2ef 100644 --- a/src/tests/Recyclarr.Config.Tests/Parsing/ConfigurationFinderTest.cs +++ b/src/tests/Recyclarr.Tests/Config/Parsing/ConfigurationFinderTest.cs @@ -1,9 +1,9 @@ using System.IO.Abstractions; -using Recyclarr.Platform; using Recyclarr.Config.Parsing; using Recyclarr.Config.Parsing.ErrorHandling; +using Recyclarr.Platform; -namespace Recyclarr.Config.Tests.Parsing; +namespace Recyclarr.Tests.Config.Parsing; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/ConfigMerging/ConfigIncludeProcessorTest.cs b/src/tests/Recyclarr.Tests/Config/Parsing/PostProcessing/ConfigMerging/ConfigIncludeProcessorTest.cs similarity index 97% rename from src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/ConfigMerging/ConfigIncludeProcessorTest.cs rename to src/tests/Recyclarr.Tests/Config/Parsing/PostProcessing/ConfigMerging/ConfigIncludeProcessorTest.cs index 5371a97f..5fb8bdc6 100644 --- a/src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/ConfigMerging/ConfigIncludeProcessorTest.cs +++ b/src/tests/Recyclarr.Tests/Config/Parsing/PostProcessing/ConfigMerging/ConfigIncludeProcessorTest.cs @@ -1,8 +1,8 @@ using System.IO.Abstractions; -using Recyclarr.Platform; using Recyclarr.Config.Parsing.PostProcessing.ConfigMerging; +using Recyclarr.Platform; -namespace Recyclarr.Config.Tests.Parsing.PostProcessing.ConfigMerging; +namespace Recyclarr.Tests.Config.Parsing.PostProcessing.ConfigMerging; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/ConfigMerging/ServiceConfigMergerTest.cs b/src/tests/Recyclarr.Tests/Config/Parsing/PostProcessing/ConfigMerging/ServiceConfigMergerTest.cs similarity index 99% rename from src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/ConfigMerging/ServiceConfigMergerTest.cs rename to src/tests/Recyclarr.Tests/Config/Parsing/PostProcessing/ConfigMerging/ServiceConfigMergerTest.cs index 34722361..568ab220 100644 --- a/src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/ConfigMerging/ServiceConfigMergerTest.cs +++ b/src/tests/Recyclarr.Tests/Config/Parsing/PostProcessing/ConfigMerging/ServiceConfigMergerTest.cs @@ -4,7 +4,7 @@ using Recyclarr.Config.Models; using Recyclarr.Config.Parsing; using Recyclarr.Config.Parsing.PostProcessing.ConfigMerging; -namespace Recyclarr.Config.Tests.Parsing.PostProcessing.ConfigMerging; +namespace Recyclarr.Tests.Config.Parsing.PostProcessing.ConfigMerging; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/ConfigMerging/SonarrConfigMergerTest.cs b/src/tests/Recyclarr.Tests/Config/Parsing/PostProcessing/ConfigMerging/SonarrConfigMergerTest.cs similarity index 98% rename from src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/ConfigMerging/SonarrConfigMergerTest.cs rename to src/tests/Recyclarr.Tests/Config/Parsing/PostProcessing/ConfigMerging/SonarrConfigMergerTest.cs index 237c2270..33f83ee1 100644 --- a/src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/ConfigMerging/SonarrConfigMergerTest.cs +++ b/src/tests/Recyclarr.Tests/Config/Parsing/PostProcessing/ConfigMerging/SonarrConfigMergerTest.cs @@ -3,7 +3,7 @@ using FluentAssertions.Execution; using Recyclarr.Config.Parsing; using Recyclarr.Config.Parsing.PostProcessing.ConfigMerging; -namespace Recyclarr.Config.Tests.Parsing.PostProcessing.ConfigMerging; +namespace Recyclarr.Tests.Config.Parsing.PostProcessing.ConfigMerging; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/ConfigMerging/TemplateIncludeProcessorTest.cs b/src/tests/Recyclarr.Tests/Config/Parsing/PostProcessing/ConfigMerging/TemplateIncludeProcessorTest.cs similarity index 98% rename from src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/ConfigMerging/TemplateIncludeProcessorTest.cs rename to src/tests/Recyclarr.Tests/Config/Parsing/PostProcessing/ConfigMerging/TemplateIncludeProcessorTest.cs index c7734491..3b1580be 100644 --- a/src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/ConfigMerging/TemplateIncludeProcessorTest.cs +++ b/src/tests/Recyclarr.Tests/Config/Parsing/PostProcessing/ConfigMerging/TemplateIncludeProcessorTest.cs @@ -3,7 +3,7 @@ using Recyclarr.Common; using Recyclarr.Config.Parsing.PostProcessing.ConfigMerging; using Recyclarr.TrashGuide; -namespace Recyclarr.Config.Tests.Parsing.PostProcessing.ConfigMerging; +namespace Recyclarr.Tests.Config.Parsing.PostProcessing.ConfigMerging; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/ConfigMerging/YamlIncludeResolverTest.cs b/src/tests/Recyclarr.Tests/Config/Parsing/PostProcessing/ConfigMerging/YamlIncludeResolverTest.cs similarity index 97% rename from src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/ConfigMerging/YamlIncludeResolverTest.cs rename to src/tests/Recyclarr.Tests/Config/Parsing/PostProcessing/ConfigMerging/YamlIncludeResolverTest.cs index ec28b79d..0e56739b 100644 --- a/src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/ConfigMerging/YamlIncludeResolverTest.cs +++ b/src/tests/Recyclarr.Tests/Config/Parsing/PostProcessing/ConfigMerging/YamlIncludeResolverTest.cs @@ -2,7 +2,7 @@ using System.IO.Abstractions; using Recyclarr.Common; using Recyclarr.Config.Parsing.PostProcessing.ConfigMerging; -namespace Recyclarr.Config.Tests.Parsing.PostProcessing.ConfigMerging; +namespace Recyclarr.Tests.Config.Parsing.PostProcessing.ConfigMerging; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/ImplicitUrlAndKeyPostProcessorTest.cs b/src/tests/Recyclarr.Tests/Config/Parsing/PostProcessing/ImplicitUrlAndKeyPostProcessorTest.cs similarity index 99% rename from src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/ImplicitUrlAndKeyPostProcessorTest.cs rename to src/tests/Recyclarr.Tests/Config/Parsing/PostProcessing/ImplicitUrlAndKeyPostProcessorTest.cs index 52ba97aa..00672e76 100644 --- a/src/tests/Recyclarr.Config.Tests/Parsing/PostProcessing/ImplicitUrlAndKeyPostProcessorTest.cs +++ b/src/tests/Recyclarr.Tests/Config/Parsing/PostProcessing/ImplicitUrlAndKeyPostProcessorTest.cs @@ -2,7 +2,7 @@ using Recyclarr.Config.Parsing; using Recyclarr.Config.Parsing.PostProcessing; using Recyclarr.Config.Secrets; -namespace Recyclarr.Config.Tests.Parsing.PostProcessing; +namespace Recyclarr.Tests.Config.Parsing.PostProcessing; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Config.Tests/Parsing/SonarrConfigYamlValidatorTest.cs b/src/tests/Recyclarr.Tests/Config/Parsing/SonarrConfigYamlValidatorTest.cs similarity index 98% rename from src/tests/Recyclarr.Config.Tests/Parsing/SonarrConfigYamlValidatorTest.cs rename to src/tests/Recyclarr.Tests/Config/Parsing/SonarrConfigYamlValidatorTest.cs index 0814a4c9..d024ce6c 100644 --- a/src/tests/Recyclarr.Config.Tests/Parsing/SonarrConfigYamlValidatorTest.cs +++ b/src/tests/Recyclarr.Tests/Config/Parsing/SonarrConfigYamlValidatorTest.cs @@ -2,7 +2,7 @@ using FluentValidation.TestHelper; using Recyclarr.Config.Models; using Recyclarr.Config.Parsing; -namespace Recyclarr.Config.Tests.Parsing; +namespace Recyclarr.Tests.Config.Parsing; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Config.Tests/Secrets/SecretNotFoundExceptionTest.cs b/src/tests/Recyclarr.Tests/Config/Secrets/SecretNotFoundExceptionTest.cs similarity index 88% rename from src/tests/Recyclarr.Config.Tests/Secrets/SecretNotFoundExceptionTest.cs rename to src/tests/Recyclarr.Tests/Config/Secrets/SecretNotFoundExceptionTest.cs index 4eb84966..04dd74d0 100644 --- a/src/tests/Recyclarr.Config.Tests/Secrets/SecretNotFoundExceptionTest.cs +++ b/src/tests/Recyclarr.Tests/Config/Secrets/SecretNotFoundExceptionTest.cs @@ -1,6 +1,6 @@ using Recyclarr.Config.Secrets; -namespace Recyclarr.Config.Tests.Secrets; +namespace Recyclarr.Tests.Config.Secrets; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Config.Tests/Settings/SettingsPersisterTest.cs b/src/tests/Recyclarr.Tests/Config/Settings/SettingsPersisterTest.cs similarity index 95% rename from src/tests/Recyclarr.Config.Tests/Settings/SettingsPersisterTest.cs rename to src/tests/Recyclarr.Tests/Config/Settings/SettingsPersisterTest.cs index e3d18f76..8893c0d1 100644 --- a/src/tests/Recyclarr.Config.Tests/Settings/SettingsPersisterTest.cs +++ b/src/tests/Recyclarr.Tests/Config/Settings/SettingsPersisterTest.cs @@ -3,7 +3,7 @@ using Recyclarr.Platform; using Recyclarr.Settings; using Recyclarr.Yaml; -namespace Recyclarr.Config.Tests.Settings; +namespace Recyclarr.Tests.Config.Settings; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Config.Tests/GlobalUsings.cs b/src/tests/Recyclarr.Tests/GlobalUsings.cs similarity index 100% rename from src/tests/Recyclarr.Config.Tests/GlobalUsings.cs rename to src/tests/Recyclarr.Tests/GlobalUsings.cs diff --git a/src/tests/Recyclarr.Json.Tests/JsonUtilsTest.cs b/src/tests/Recyclarr.Tests/Json/JsonUtilsTest.cs similarity index 97% rename from src/tests/Recyclarr.Json.Tests/JsonUtilsTest.cs rename to src/tests/Recyclarr.Tests/Json/JsonUtilsTest.cs index 9ff32ecd..7b85918b 100644 --- a/src/tests/Recyclarr.Json.Tests/JsonUtilsTest.cs +++ b/src/tests/Recyclarr.Tests/Json/JsonUtilsTest.cs @@ -1,7 +1,8 @@ using System.IO.Abstractions; +using Recyclarr.Json; using Recyclarr.TestLibrary; -namespace Recyclarr.Json.Tests; +namespace Recyclarr.Tests.Json; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.TrashLib.Tests/Startup/DefaultAppDataSetupTest.cs b/src/tests/Recyclarr.Tests/Platform/DefaultAppDataSetupTest.cs similarity index 98% rename from src/tests/Recyclarr.TrashLib.Tests/Startup/DefaultAppDataSetupTest.cs rename to src/tests/Recyclarr.Tests/Platform/DefaultAppDataSetupTest.cs index 2e01e0cf..23fe16bf 100644 --- a/src/tests/Recyclarr.TrashLib.Tests/Startup/DefaultAppDataSetupTest.cs +++ b/src/tests/Recyclarr.Tests/Platform/DefaultAppDataSetupTest.cs @@ -2,7 +2,7 @@ using System.IO.Abstractions; using Recyclarr.Common; using Recyclarr.Platform; -namespace Recyclarr.TrashLib.Tests.Startup; +namespace Recyclarr.Tests.Platform; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Tests/Recyclarr.Tests.csproj b/src/tests/Recyclarr.Tests/Recyclarr.Tests.csproj new file mode 100644 index 00000000..b936cea4 --- /dev/null +++ b/src/tests/Recyclarr.Tests/Recyclarr.Tests.csproj @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/tests/Recyclarr.TestLibrary.Tests/StreamBuilderTest.cs b/src/tests/Recyclarr.Tests/TestLibrary/StreamBuilderTest.cs similarity index 80% rename from src/tests/Recyclarr.TestLibrary.Tests/StreamBuilderTest.cs rename to src/tests/Recyclarr.Tests/TestLibrary/StreamBuilderTest.cs index 0b99c669..e05436f3 100644 --- a/src/tests/Recyclarr.TestLibrary.Tests/StreamBuilderTest.cs +++ b/src/tests/Recyclarr.Tests/TestLibrary/StreamBuilderTest.cs @@ -1,4 +1,6 @@ -namespace Recyclarr.TestLibrary.Tests; +using Recyclarr.TestLibrary; + +namespace Recyclarr.Tests.TestLibrary; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.TestLibrary.Tests/StringUtilsTest.cs b/src/tests/Recyclarr.Tests/TestLibrary/StringUtilsTest.cs similarity index 79% rename from src/tests/Recyclarr.TestLibrary.Tests/StringUtilsTest.cs rename to src/tests/Recyclarr.Tests/TestLibrary/StringUtilsTest.cs index de3c9714..dbf0358c 100644 --- a/src/tests/Recyclarr.TestLibrary.Tests/StringUtilsTest.cs +++ b/src/tests/Recyclarr.Tests/TestLibrary/StringUtilsTest.cs @@ -1,4 +1,6 @@ -namespace Recyclarr.TestLibrary.Tests; +using Recyclarr.TestLibrary; + +namespace Recyclarr.Tests.TestLibrary; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.Tests/TrashGuide/ConfigTemplateGuideServiceTest.cs b/src/tests/Recyclarr.Tests/TrashGuide/ConfigTemplateGuideServiceTest.cs new file mode 100644 index 00000000..9b624fd9 --- /dev/null +++ b/src/tests/Recyclarr.Tests/TrashGuide/ConfigTemplateGuideServiceTest.cs @@ -0,0 +1,17 @@ +using Recyclarr.TrashGuide; + +namespace Recyclarr.Tests.TrashGuide; + +[TestFixture] +[Parallelizable(ParallelScope.All)] +public class ConfigTemplateGuideServiceTest +{ + [Test, AutoMockData] + public void Throw_when_templates_dir_does_not_exist( + ConfigTemplateGuideService sut) + { + var act = () => _ = sut.GetTemplateData(); + + act.Should().Throw().WithMessage("Recyclarr*templates*"); + } +} diff --git a/src/tests/Recyclarr.TrashGuide.Tests/CustomFormat/CustomFormatCategoryParserTest.cs b/src/tests/Recyclarr.Tests/TrashGuide/CustomFormat/CustomFormatCategoryParserTest.cs similarity index 98% rename from src/tests/Recyclarr.TrashGuide.Tests/CustomFormat/CustomFormatCategoryParserTest.cs rename to src/tests/Recyclarr.Tests/TrashGuide/CustomFormat/CustomFormatCategoryParserTest.cs index f0c2181a..5a7cf340 100644 --- a/src/tests/Recyclarr.TrashGuide.Tests/CustomFormat/CustomFormatCategoryParserTest.cs +++ b/src/tests/Recyclarr.Tests/TrashGuide/CustomFormat/CustomFormatCategoryParserTest.cs @@ -1,9 +1,8 @@ using System.IO.Abstractions; using Recyclarr.Platform; -using Recyclarr.TestLibrary.AutoFixture; using Recyclarr.TrashGuide.CustomFormat; -namespace Recyclarr.TrashGuide.Tests.CustomFormat; +namespace Recyclarr.Tests.TrashGuide.CustomFormat; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.TrashGuide.Tests/QualitySize/QualityItemTest.cs b/src/tests/Recyclarr.Tests/TrashGuide/QualitySize/QualityItemTest.cs similarity index 98% rename from src/tests/Recyclarr.TrashGuide.Tests/QualitySize/QualityItemTest.cs rename to src/tests/Recyclarr.Tests/TrashGuide/QualitySize/QualityItemTest.cs index 4148cd4c..89f481d0 100644 --- a/src/tests/Recyclarr.TrashGuide.Tests/QualitySize/QualityItemTest.cs +++ b/src/tests/Recyclarr.Tests/TrashGuide/QualitySize/QualityItemTest.cs @@ -1,6 +1,6 @@ using Recyclarr.TrashGuide.QualitySize; -namespace Recyclarr.TrashGuide.Tests.QualitySize; +namespace Recyclarr.Tests.TrashGuide.QualitySize; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.TrashGuide.Tests/QualitySize/QualitySizeItemTest.cs b/src/tests/Recyclarr.Tests/TrashGuide/QualitySize/QualitySizeItemTest.cs similarity index 98% rename from src/tests/Recyclarr.TrashGuide.Tests/QualitySize/QualitySizeItemTest.cs rename to src/tests/Recyclarr.Tests/TrashGuide/QualitySize/QualitySizeItemTest.cs index d5a54eb7..25fa34d7 100644 --- a/src/tests/Recyclarr.TrashGuide.Tests/QualitySize/QualitySizeItemTest.cs +++ b/src/tests/Recyclarr.Tests/TrashGuide/QualitySize/QualitySizeItemTest.cs @@ -1,6 +1,6 @@ using Recyclarr.TrashGuide.QualitySize; -namespace Recyclarr.TrashGuide.Tests.QualitySize; +namespace Recyclarr.Tests.TrashGuide.QualitySize; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.TrashGuide.Tests/ReleaseProfile/ReleaseProfileDataValidationFiltererTest.cs b/src/tests/Recyclarr.Tests/TrashGuide/ReleaseProfile/ReleaseProfileDataValidationFiltererTest.cs similarity index 96% rename from src/tests/Recyclarr.TrashGuide.Tests/ReleaseProfile/ReleaseProfileDataValidationFiltererTest.cs rename to src/tests/Recyclarr.Tests/TrashGuide/ReleaseProfile/ReleaseProfileDataValidationFiltererTest.cs index dbed0ae1..e2fdc087 100644 --- a/src/tests/Recyclarr.TrashGuide.Tests/ReleaseProfile/ReleaseProfileDataValidationFiltererTest.cs +++ b/src/tests/Recyclarr.Tests/TrashGuide/ReleaseProfile/ReleaseProfileDataValidationFiltererTest.cs @@ -1,7 +1,6 @@ -using Recyclarr.TestLibrary.AutoFixture; using Recyclarr.TrashGuide.ReleaseProfile; -namespace Recyclarr.TrashGuide.Tests.ReleaseProfile; +namespace Recyclarr.Tests.TrashGuide.ReleaseProfile; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.TrashGuide.Tests/ReleaseProfile/ReleaseProfileDataValidatorTest.cs b/src/tests/Recyclarr.Tests/TrashGuide/ReleaseProfile/ReleaseProfileDataValidatorTest.cs similarity index 98% rename from src/tests/Recyclarr.TrashGuide.Tests/ReleaseProfile/ReleaseProfileDataValidatorTest.cs rename to src/tests/Recyclarr.Tests/TrashGuide/ReleaseProfile/ReleaseProfileDataValidatorTest.cs index 1ea27615..a41da044 100644 --- a/src/tests/Recyclarr.TrashGuide.Tests/ReleaseProfile/ReleaseProfileDataValidatorTest.cs +++ b/src/tests/Recyclarr.Tests/TrashGuide/ReleaseProfile/ReleaseProfileDataValidatorTest.cs @@ -1,7 +1,7 @@ using FluentValidation.TestHelper; using Recyclarr.TrashGuide.ReleaseProfile; -namespace Recyclarr.TrashGuide.Tests.ReleaseProfile; +namespace Recyclarr.Tests.TrashGuide.ReleaseProfile; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.TrashGuide.Tests/ReleaseProfile/ReleaseProfileGuideServiceTest.cs b/src/tests/Recyclarr.Tests/TrashGuide/ReleaseProfile/ReleaseProfileGuideServiceTest.cs similarity index 96% rename from src/tests/Recyclarr.TrashGuide.Tests/ReleaseProfile/ReleaseProfileGuideServiceTest.cs rename to src/tests/Recyclarr.Tests/TrashGuide/ReleaseProfile/ReleaseProfileGuideServiceTest.cs index effc6296..b3cbdb04 100644 --- a/src/tests/Recyclarr.TrashGuide.Tests/ReleaseProfile/ReleaseProfileGuideServiceTest.cs +++ b/src/tests/Recyclarr.Tests/TrashGuide/ReleaseProfile/ReleaseProfileGuideServiceTest.cs @@ -2,10 +2,9 @@ using System.IO.Abstractions; using Recyclarr.Json; using Recyclarr.Repo; using Recyclarr.TestLibrary; -using Recyclarr.TestLibrary.AutoFixture; using Recyclarr.TrashGuide.ReleaseProfile; -namespace Recyclarr.TrashGuide.Tests.ReleaseProfile; +namespace Recyclarr.Tests.TrashGuide.ReleaseProfile; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.TrashLib.Tests/Repo/VersionControl/GitPathTest.cs b/src/tests/Recyclarr.Tests/VersionControl/GitPathTest.cs similarity index 93% rename from src/tests/Recyclarr.TrashLib.Tests/Repo/VersionControl/GitPathTest.cs rename to src/tests/Recyclarr.Tests/VersionControl/GitPathTest.cs index fdf9ac26..88328a8f 100644 --- a/src/tests/Recyclarr.TrashLib.Tests/Repo/VersionControl/GitPathTest.cs +++ b/src/tests/Recyclarr.Tests/VersionControl/GitPathTest.cs @@ -1,7 +1,7 @@ using Recyclarr.Repo; using Recyclarr.Settings; -namespace Recyclarr.TrashLib.Tests.Repo.VersionControl; +namespace Recyclarr.Tests.VersionControl; [TestFixture] [Parallelizable(ParallelScope.All)] diff --git a/src/tests/Recyclarr.TrashGuide.TestLibrary/GuideIntegrationFixture.cs b/src/tests/Recyclarr.TrashGuide.TestLibrary/GuideIntegrationFixture.cs deleted file mode 100644 index 24a0e010..00000000 --- a/src/tests/Recyclarr.TrashGuide.TestLibrary/GuideIntegrationFixture.cs +++ /dev/null @@ -1,18 +0,0 @@ -using Autofac; -using Recyclarr.TrashLib.TestLibrary; -using Recyclarr.Yaml; - -namespace Recyclarr.TrashGuide.TestLibrary; - -[FixtureLifeCycle(LifeCycle.InstancePerTestCase)] -public abstract class GuideIntegrationFixture : TrashLibIntegrationFixture -{ - protected override void RegisterTypes(ContainerBuilder builder) - { - base.RegisterTypes(builder); - builder.RegisterModule(); - - // dependencies - builder.RegisterModule(); - } -} diff --git a/src/tests/Recyclarr.TrashGuide.TestLibrary/Recyclarr.TrashGuide.TestLibrary.csproj b/src/tests/Recyclarr.TrashGuide.TestLibrary/Recyclarr.TrashGuide.TestLibrary.csproj deleted file mode 100644 index 4a73f57c..00000000 --- a/src/tests/Recyclarr.TrashGuide.TestLibrary/Recyclarr.TrashGuide.TestLibrary.csproj +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/src/tests/Recyclarr.TrashLib.TestLibrary/Recyclarr.TrashLib.TestLibrary.csproj b/src/tests/Recyclarr.TrashLib.TestLibrary/Recyclarr.TrashLib.TestLibrary.csproj deleted file mode 100644 index eed24abe..00000000 --- a/src/tests/Recyclarr.TrashLib.TestLibrary/Recyclarr.TrashLib.TestLibrary.csproj +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/src/tests/Recyclarr.TrashLib.TestLibrary/TrashLibIntegrationFixture.cs b/src/tests/Recyclarr.TrashLib.TestLibrary/TrashLibIntegrationFixture.cs deleted file mode 100644 index 8ddf1556..00000000 --- a/src/tests/Recyclarr.TrashLib.TestLibrary/TrashLibIntegrationFixture.cs +++ /dev/null @@ -1,41 +0,0 @@ -using System.IO.Abstractions; -using Autofac; -using Recyclarr.Platform; -using Recyclarr.TestLibrary; -using Recyclarr.TestLibrary.Autofac; -using Recyclarr.TrashLib.Compatibility; -using Recyclarr.VersionControl; - -namespace Recyclarr.TrashLib.TestLibrary; - -[FixtureLifeCycle(LifeCycle.InstancePerTestCase)] -public abstract class TrashLibIntegrationFixture : IntegrationTestFixture -{ - protected IAppPaths Paths { get; } - - protected TrashLibIntegrationFixture() - { - Paths = new AppPaths(Fs.CurrentDirectory().SubDirectory("test").SubDirectory("recyclarr")); - } - - protected override void RegisterTypes(ContainerBuilder builder) - { - base.RegisterTypes(builder); - builder.RegisterModule(); - } - - protected override void RegisterStubsAndMocks(ContainerBuilder builder) - { - base.RegisterStubsAndMocks(builder); - - builder.RegisterInstance(Paths).As(); - - builder.RegisterMockFor(); - builder.RegisterMockFor(); - builder.RegisterMockFor(m => - { - // By default, choose some extremely high number so that all the newest features are enabled. - m.GetVersion(default!).ReturnsForAnyArgs(_ => new Version("99.0.0.0")); - }); - } -} diff --git a/src/tests/Recyclarr.TrashLib.Tests/GlobalUsings.cs b/src/tests/Recyclarr.TrashLib.Tests/GlobalUsings.cs deleted file mode 100644 index ddaecfaa..00000000 --- a/src/tests/Recyclarr.TrashLib.Tests/GlobalUsings.cs +++ /dev/null @@ -1,3 +0,0 @@ -// Global using directives - -global using Recyclarr.TestLibrary.AutoFixture; diff --git a/src/tests/Recyclarr.TrashLib.Tests/Recyclarr.TrashLib.Tests.csproj b/src/tests/Recyclarr.TrashLib.Tests/Recyclarr.TrashLib.Tests.csproj deleted file mode 100644 index 466a79ec..00000000 --- a/src/tests/Recyclarr.TrashLib.Tests/Recyclarr.TrashLib.Tests.csproj +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - -