mesa-backlog/mstest/AC_UnitTestExcelReader.cs
2022-08-26 15:40:05 -07:00

54 lines
2.2 KiB
C#

using Mesa_Backlog.Library;
using Microsoft.Extensions.Configuration;
using Serilog;
using System.Reflection;
namespace Mesa_Backlog.MS_Test;
[TestClass]
public class AC_UnitTestExcelReader
{
private readonly ILogger _Logger;
private readonly AppSettings _AppSettings;
private readonly string _WorkingDirectory;
private readonly IConfigurationRoot _ConfigurationRoot;
public AC_UnitTestExcelReader()
{
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 = Library.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<AC_UnitTestExcelReader>();
logger.Information("Complete");
_Logger = logger;
_AppSettings = appSettings;
_WorkingDirectory = workingDirectory;
_ConfigurationRoot = configurationRoot;
}
[TestMethod, Ignore]
public void TestMethodExcelReader()
{
Assert.IsFalse(_WorkingDirectory is null);
Assert.IsFalse(_ConfigurationRoot is null);
string json = ExcelReader.GetJson(_AppSettings.Excel.SourceFile, _AppSettings.Excel.Sheet);
FIBacklogMesa[] fIBacklogMesaCollection = ExcelReader.GetFIBacklogMesaCollection(json);
_Logger.Information(string.Concat(fIBacklogMesaCollection.Length, " row(s)"));
json = ExcelReader.GetJson(fIBacklogMesaCollection);
File.WriteAllText(_AppSettings.Excel.TargetFile, json);
}
}