// using Microsoft.Extensions.Caching.Memory; // using Microsoft.Extensions.Configuration; // using Microsoft.Extensions.DependencyInjection; // using OI.Metrology.Archive.Repositories; // using OI.Metrology.Shared.Models; // using OI.Metrology.Shared.Repositories; // using OI.Metrology.Tests.Models; // using System.Reflection; // using System.Text.Json; // namespace OI.Metrology.Tests; // [TestClass] // public class UnitTestArchive // { // private readonly ILogger _Logger; // private readonly AppSettings _AppSettings; // private readonly string _WorkingDirectory; // private readonly IMemoryCache? _MemoryCache; // private readonly IConfigurationRoot _ConfigurationRoot; // public UnitTestArchive() // { // ILogger logger; // AppSettings appSettings; // string workingDirectory; // IConfigurationRoot configurationRoot; // LoggerConfiguration loggerConfiguration = new(); // Assembly assembly = Assembly.GetExecutingAssembly(); // IConfigurationBuilder configurationBuilder = new ConfigurationBuilder() // .AddEnvironmentVariables() // .AddJsonFile("appsettings.Development.json"); // configurationRoot = configurationBuilder.Build(); // appSettings = Models.Binder.AppSettings.Get(configurationRoot); // workingDirectory = IWorkingDirectory.GetWorkingDirectory(assembly.GetName().Name, appSettings.WorkingDirectoryName); // Environment.SetEnvironmentVariable(nameof(workingDirectory), workingDirectory); // _ = ConfigurationLoggerConfigurationExtensions.Configuration(loggerConfiguration.ReadFrom, configurationRoot); // Log.Logger = loggerConfiguration.CreateLogger(); // logger = Log.ForContext(); // logger.Information("Complete"); // ServiceCollection services = new(); // ServiceProvider serviceProvider = services.BuildServiceProvider(); // _ = services.AddMemoryCache(); // _MemoryCache = serviceProvider.GetService(); // _Logger = logger; // _AppSettings = appSettings; // _WorkingDirectory = workingDirectory; // _ConfigurationRoot = configurationRoot; // } // [TestMethod] // public void TestMethodNull() // { // Assert.IsFalse(_Logger is null); // Assert.IsFalse(_AppSettings is null); // Assert.IsFalse(_WorkingDirectory is null); // Assert.IsFalse(_ConfigurationRoot is null); // } // [TestMethod] // public void TestMethodArchive() // { // Assert.IsFalse(_Logger is null); // Assert.IsFalse(_AppSettings is null); // Assert.IsFalse(_WorkingDirectory is null); // Assert.IsFalse(_ConfigurationRoot is null); // } // [TestMethod] // public void TestMethodArchiveJson() // { // string json; // string jsonFile = Path.Combine(AppContext.BaseDirectory, "RdsMaxRepo.json"); // Assert.IsTrue(File.Exists(jsonFile)); // json = JsonSerializer.Serialize(_AppSettings); // IRdsMaxRepo rdsMaxRepo = new RdsMaxRepo(json, _MemoryCache); // json = File.ReadAllText(jsonFile); // Shared.DataModels.RDS.Max[]? collection = JsonSerializer.Deserialize(json); // if (collection is null) // throw new NullReferenceException(nameof(collection)); // List data = rdsMaxRepo.Convert(collection); // Assert.IsTrue(data.Any()); // } // }