GetAppSettings

This commit is contained in:
Mike Phares 2023-01-16 17:05:21 -07:00
parent a70ee6d7e5
commit 46c9d91dc9
7 changed files with 79 additions and 60 deletions

View File

@ -8,22 +8,16 @@ namespace OI.Metrology.Server.ApiControllers;
public class AppSettingsController : ControllerBase, IAppSettingsController<ActionResult> public class AppSettingsController : ControllerBase, IAppSettingsController<ActionResult>
{ {
private readonly IAppSettingsRepository _AppSettingsRepository; private readonly IAppSettingsRepository<Models.Binder.AppSettings> _AppSettingsRepository;
public AppSettingsController(IAppSettingsRepository AppSettingsRepository) => _AppSettingsRepository = AppSettingsRepository; public AppSettingsController(IAppSettingsRepository<Models.Binder.AppSettings> AppSettingsRepository) => _AppSettingsRepository = AppSettingsRepository;
[HttpGet(nameof(IAppSettingsController<ActionResult>.Action.App))] [HttpGet(nameof(IAppSettingsController<ActionResult>.Action.App))]
public ActionResult GetAppSettings() public ActionResult GetAppSettings() =>
{ Ok(_AppSettingsRepository.GetAppSettings());
List<string> results = _AppSettingsRepository.GetAppSettings();
return Ok(results);
}
[HttpGet(nameof(IAppSettingsController<ActionResult>.Action.DevOps))] [HttpGet(nameof(IAppSettingsController<ActionResult>.Action.DevOps))]
public ActionResult GetBuildNumberAndGitCommitSeven() public ActionResult GetBuildNumberAndGitCommitSeven() =>
{ Ok(_AppSettingsRepository.GetBuildNumberAndGitCommitSeven());
string result = _AppSettingsRepository.GetBuildNumberAndGitCommitSeven();
return Ok(result);
}
} }

View File

@ -67,7 +67,7 @@ public class Program
_ = webApplicationBuilder.Services.AddSingleton(_ => appSettings); _ = webApplicationBuilder.Services.AddSingleton(_ => appSettings);
_ = webApplicationBuilder.Services.AddSingleton<IInboundRepository, InboundRepository>(); _ = webApplicationBuilder.Services.AddSingleton<IInboundRepository, InboundRepository>();
_ = webApplicationBuilder.Services.AddSingleton<IAppSettingsRepository>(_ => appSettingsRepository); _ = webApplicationBuilder.Services.AddSingleton<IAppSettingsRepository<Models.Binder.AppSettings>>(_ => appSettingsRepository);
_ = webApplicationBuilder.Services.AddSingleton<IClientSettingsRepository>(_ => clientSettingsRepository); _ = webApplicationBuilder.Services.AddSingleton<IClientSettingsRepository>(_ => clientSettingsRepository);
_ = webApplicationBuilder.Services.AddSingleton<IServiceShopOrderRepository, ServiceShopOrderRepository>(); _ = webApplicationBuilder.Services.AddSingleton<IServiceShopOrderRepository, ServiceShopOrderRepository>();
_ = webApplicationBuilder.Services.AddSingleton<IDbConnectionFactory, SQLDbConnectionFactory>(_ => sqlDbConnectionFactory); _ = webApplicationBuilder.Services.AddSingleton<IDbConnectionFactory, SQLDbConnectionFactory>(_ => sqlDbConnectionFactory);

View File

@ -1,37 +1,36 @@
using OI.Metrology.Server.Models; using OI.Metrology.Server.Models;
using OI.Metrology.Shared.Models.Stateless; using OI.Metrology.Shared.Models.Stateless;
using System.Text.Json;
namespace OI.Metrology.Server.Repository; namespace OI.Metrology.Server.Repository;
public class AppSettingsRepository : IAppSettingsRepository public class AppSettingsRepository : IAppSettingsRepository<Models.Binder.AppSettings>
{ {
private readonly AppSettings _AppSettings; private readonly AppSettings _AppSettings;
public AppSettingsRepository(AppSettings appSettings) => _AppSettings = appSettings; public AppSettingsRepository(AppSettings appSettings) => _AppSettings = appSettings;
public List<string> GetAppSettings() internal Models.Binder.AppSettings GetAppSettings()
{ {
List<string> results = new(); Models.Binder.AppSettings result = new()
string json = JsonSerializer.Serialize(_AppSettings); {
JsonElement jsonElement = JsonSerializer.Deserialize<JsonElement>(json); BuildNumber = _AppSettings.BuildNumber,
JsonProperty[] jsonProperties = jsonElement.EnumerateObject().ToArray(); Company = _AppSettings.Company,
foreach (JsonProperty jsonProperty in jsonProperties) GitCommitSeven = _AppSettings.GitCommitSeven,
results.Add(jsonProperty.Value.ToString()); IsDevelopment = _AppSettings.IsDevelopment,
if (!_AppSettings.IsDevelopment) IsStaging = _AppSettings.IsStaging,
throw new Exception("Shouldn't expose!"); };
return results; return result;
} }
List<string> IAppSettingsRepository.GetAppSettings() => GetAppSettings(); Models.Binder.AppSettings IAppSettingsRepository<Models.Binder.AppSettings>.GetAppSettings() => GetAppSettings();
public string GetBuildNumberAndGitCommitSeven() internal string GetBuildNumberAndGitCommitSeven()
{ {
string result = string.Concat(_AppSettings.BuildNumber, '-', _AppSettings.GitCommitSeven); string result = string.Concat(_AppSettings.BuildNumber, '-', _AppSettings.GitCommitSeven);
return result; return result;
} }
string IAppSettingsRepository.GetBuildNumberAndGitCommitSeven() => GetBuildNumberAndGitCommitSeven(); string IAppSettingsRepository<Models.Binder.AppSettings>.GetBuildNumberAndGitCommitSeven() => GetBuildNumberAndGitCommitSeven();
} }

View File

@ -11,7 +11,7 @@ public class ClientSettingsRepository : IClientSettingsRepository
public ClientSettingsRepository(AppSettings appSettings) => _AppSettings = appSettings; public ClientSettingsRepository(AppSettings appSettings) => _AppSettings = appSettings;
public List<string> GetClientSettings(IPAddress? remoteIpAddress) internal List<string> GetClientSettings(IPAddress? remoteIpAddress)
{ {
List<string> results = new(); List<string> results = new();
if (remoteIpAddress is null) if (remoteIpAddress is null)
@ -25,7 +25,7 @@ public class ClientSettingsRepository : IClientSettingsRepository
List<string> IClientSettingsRepository.GetClientSettings(IPAddress? remoteIpAddress) => GetClientSettings(remoteIpAddress); List<string> IClientSettingsRepository.GetClientSettings(IPAddress? remoteIpAddress) => GetClientSettings(remoteIpAddress);
public string GetIpAddress(IPAddress? remoteIpAddress) internal static string GetIpAddress(IPAddress? remoteIpAddress)
{ {
string result = remoteIpAddress is null ? string.Empty : remoteIpAddress.ToString(); string result = remoteIpAddress is null ? string.Empty : remoteIpAddress.ToString();
return result; return result;

View File

@ -31,7 +31,7 @@ public class MetrologyRepository : IMetrologyRepository
protected DbProviderFactory GetDbProviderFactory(IDbConnection conn) => protected DbProviderFactory GetDbProviderFactory(IDbConnection conn) =>
DbProviderFactories.GetFactory(conn.GetType().Namespace); DbProviderFactories.GetFactory(conn.GetType().Namespace);
public TransactionScope StartTransaction() => new(); internal static TransactionScope StartTransaction() => new();
protected void CacheItem(string key, object v) protected void CacheItem(string key, object v)
{ {
@ -40,7 +40,7 @@ public class MetrologyRepository : IMetrologyRepository
_ = _Cache.Set(key, v, new MemoryCacheEntryOptions().SetSlidingExpiration(TimeSpan.FromHours(1))); _ = _Cache.Set(key, v, new MemoryCacheEntryOptions().SetSlidingExpiration(TimeSpan.FromHours(1)));
} }
public IEnumerable<ToolType> GetToolTypes() internal IEnumerable<ToolType> GetToolTypes()
{ {
IEnumerable<ToolType> cached; IEnumerable<ToolType> cached;
string cacheKey = "GetToolTypes"; string cacheKey = "GetToolTypes";
@ -55,7 +55,7 @@ public class MetrologyRepository : IMetrologyRepository
return r; return r;
} }
public ToolType GetToolTypeByName(string name) internal ToolType GetToolTypeByName(string name)
{ {
ToolType cached; ToolType cached;
string cacheKey = "GetToolTypeByName_" + name; string cacheKey = "GetToolTypeByName_" + name;
@ -72,7 +72,7 @@ public class MetrologyRepository : IMetrologyRepository
return r; return r;
} }
public ToolType GetToolTypeByID(int id) internal ToolType GetToolTypeByID(int id)
{ {
ToolType cached; ToolType cached;
string cacheKey = "GetToolTypeByID_" + id.ToString(); string cacheKey = "GetToolTypeByID_" + id.ToString();
@ -89,7 +89,7 @@ public class MetrologyRepository : IMetrologyRepository
return r; return r;
} }
public IEnumerable<ToolTypeMetadata> GetToolTypeMetadataByToolTypeID(int id) internal IEnumerable<ToolTypeMetadata> GetToolTypeMetadataByToolTypeID(int id)
{ {
IEnumerable<ToolTypeMetadata> cached; IEnumerable<ToolTypeMetadata> cached;
string cacheKey = "GetToolTypeMetadataByToolTypeID_" + id.ToString(); string cacheKey = "GetToolTypeMetadataByToolTypeID_" + id.ToString();
@ -106,7 +106,7 @@ public class MetrologyRepository : IMetrologyRepository
return r; return r;
} }
public long InsertToolDataJSON(JToken jsonrow, long headerId, List<ToolTypeMetadata> metaData, string tableName) internal long InsertToolDataJSON(JToken jsonrow, long headerId, List<ToolTypeMetadata> metaData, string tableName)
{ {
long r = -1; long r = -1;
using (DbConnection conn = GetDbConnection()) using (DbConnection conn = GetDbConnection())
@ -261,7 +261,7 @@ public class MetrologyRepository : IMetrologyRepository
return Convert.ToInt64(o); return Convert.ToInt64(o);
} }
public DataTable ExportData(string spName, DateTime startTime, DateTime endTime) internal DataTable ExportData(string spName, DateTime startTime, DateTime endTime)
{ {
DataTable dt = new(); DataTable dt = new();
DateTime endTimeLocal = endTime.ToLocalTime(); DateTime endTimeLocal = endTime.ToLocalTime();
@ -311,7 +311,7 @@ public class MetrologyRepository : IMetrologyRepository
return sb.ToString(); return sb.ToString();
} }
public DataTable GetHeaders(int toolTypeId, DateTime? startTime, DateTime? endTime, int? pageNo, int? pageSize, long? headerId, out long totalRecords) internal DataTable GetHeaders(int toolTypeId, DateTime? startTime, DateTime? endTime, int? pageNo, int? pageSize, long? headerId, out long totalRecords)
{ {
ToolType tt = GetToolTypeByID(toolTypeId); ToolType tt = GetToolTypeByID(toolTypeId);
if (tt is null) if (tt is null)
@ -404,7 +404,7 @@ public class MetrologyRepository : IMetrologyRepository
return dt; return dt;
} }
public DataTable GetData(int toolTypeId, long headerid) internal DataTable GetData(int toolTypeId, long headerid)
{ {
ToolType tt = GetToolTypeByID(toolTypeId); ToolType tt = GetToolTypeByID(toolTypeId);
if (tt is null) if (tt is null)
@ -499,7 +499,7 @@ public class MetrologyRepository : IMetrologyRepository
return dt; return dt;
} }
public Guid GetHeaderAttachmentID(int toolTypeId, long headerId) internal Guid GetHeaderAttachmentID(int toolTypeId, long headerId)
{ {
ToolType tt = GetToolTypeByID(toolTypeId); ToolType tt = GetToolTypeByID(toolTypeId);
if (tt is null) if (tt is null)
@ -511,7 +511,7 @@ public class MetrologyRepository : IMetrologyRepository
$"SELECT AttachmentID FROM [{tt.HeaderTableName}] WHERE ID = @HeaderID"; $"SELECT AttachmentID FROM [{tt.HeaderTableName}] WHERE ID = @HeaderID";
return conn.ExecuteScalar<Guid>(sql, param: new { HeaderID = headerId }); return conn.ExecuteScalar<Guid>(sql, param: new { HeaderID = headerId });
} }
public string GetHeaderInsertDate(int toolTypeId, long headerId) internal string GetHeaderInsertDate(int toolTypeId, long headerId)
{ {
ToolType tt = GetToolTypeByID(toolTypeId); ToolType tt = GetToolTypeByID(toolTypeId);
if (tt is null) if (tt is null)
@ -522,7 +522,7 @@ public class MetrologyRepository : IMetrologyRepository
$"SELECT CONVERT(varchar, case when [InsertDate] < [Date] or [Date] is null then [InsertDate] else [Date] end, 120) d FROM[{tt.HeaderTableName}] where ID = @HeaderID"; $"SELECT CONVERT(varchar, case when [InsertDate] < [Date] or [Date] is null then [InsertDate] else [Date] end, 120) d FROM[{tt.HeaderTableName}] where ID = @HeaderID";
return conn.ExecuteScalar<string>(sql, param: new { HeaderID = headerId }); return conn.ExecuteScalar<string>(sql, param: new { HeaderID = headerId });
} }
public string GetAttachmentInsertDateByGUID(string tableName, Guid attachmentId) internal string GetAttachmentInsertDateByGUID(string tableName, Guid attachmentId)
{ {
using DbConnection conn = GetDbConnection(); using DbConnection conn = GetDbConnection();
string sql = ""; string sql = "";
@ -537,13 +537,13 @@ public class MetrologyRepository : IMetrologyRepository
return conn.ExecuteScalar<string>(sql, param: new { AttachmentID = attachmentId }); return conn.ExecuteScalar<string>(sql, param: new { AttachmentID = attachmentId });
} }
public void SetHeaderDirName(string tableName, long headerId, string dateDir) internal void SetHeaderDirName(string tableName, long headerId, string dateDir)
{ {
using DbConnection conn = GetDbConnection(); using DbConnection conn = GetDbConnection();
_ = conn.Execute($"UPDATE [{tableName}] SET AttachDirName = @AttachDirName WHERE ID = @HeaderID;", new { HeaderID = headerId, AttachDirName = dateDir }); _ = conn.Execute($"UPDATE [{tableName}] SET AttachDirName = @AttachDirName WHERE ID = @HeaderID;", new { HeaderID = headerId, AttachDirName = dateDir });
} }
public Guid GetDataAttachmentID(int toolTypeId, long headerId, string title) internal Guid GetDataAttachmentID(int toolTypeId, long headerId, string title)
{ {
ToolType tt = GetToolTypeByID(toolTypeId); ToolType tt = GetToolTypeByID(toolTypeId);
if (tt is null) if (tt is null)
@ -556,7 +556,7 @@ public class MetrologyRepository : IMetrologyRepository
return conn.ExecuteScalar<Guid>(sql, param: new { HeaderID = headerId, Title = title }); return conn.ExecuteScalar<Guid>(sql, param: new { HeaderID = headerId, Title = title });
} }
// J Ouellette Added // J Ouellette Added
public string GetDataInsertDate(int toolTypeId, long headerId, string title) internal string GetDataInsertDate(int toolTypeId, long headerId, string title)
{ {
ToolType tt = GetToolTypeByID(toolTypeId); ToolType tt = GetToolTypeByID(toolTypeId);
if (tt is null) if (tt is null)
@ -575,7 +575,7 @@ public class MetrologyRepository : IMetrologyRepository
return conn.ExecuteScalar<string>(sql, param: new { HeaderID = headerId, Title = title }); return conn.ExecuteScalar<string>(sql, param: new { HeaderID = headerId, Title = title });
} }
public void SetDataDirName(string tableName, long headerId, string title, string dateDir) internal void SetDataDirName(string tableName, long headerId, string title, string dateDir)
{ {
using DbConnection conn = GetDbConnection(); using DbConnection conn = GetDbConnection();
string sql = string sql =
@ -583,13 +583,13 @@ public class MetrologyRepository : IMetrologyRepository
_ = conn.Execute(sql, param: new { HeaderID = headerId, Title = title, AttachDirName = dateDir }); _ = conn.Execute(sql, param: new { HeaderID = headerId, Title = title, AttachDirName = dateDir });
} }
public void PurgeExistingData(int toolTypeId, string title) internal void PurgeExistingData(int toolTypeId, string title)
{ {
using DbConnection conn = GetDbConnection(); using DbConnection conn = GetDbConnection();
_ = conn.Execute("PurgeExistingData", param: new { ToolTypeID = toolTypeId, Title = title }, commandType: CommandType.StoredProcedure); _ = conn.Execute("PurgeExistingData", param: new { ToolTypeID = toolTypeId, Title = title }, commandType: CommandType.StoredProcedure);
} }
public DataSet GetOIExportData(int toolTypeId, long headerid) internal DataSet GetOIExportData(int toolTypeId, long headerid)
{ {
ToolType tt = GetToolTypeByID(toolTypeId); ToolType tt = GetToolTypeByID(toolTypeId);
if (tt is null) if (tt is null)
@ -618,7 +618,7 @@ public class MetrologyRepository : IMetrologyRepository
return ds; return ds;
} }
public IEnumerable<HeaderCommon> GetHeaderTitles(int toolTypeId, int? pageNo, int? pageSize, out long totalRecords) internal IEnumerable<HeaderCommon> GetHeaderTitles(int toolTypeId, int? pageNo, int? pageSize, out long totalRecords)
{ {
ToolType tt = GetToolTypeByID(toolTypeId); ToolType tt = GetToolTypeByID(toolTypeId);
if (tt is null) if (tt is null)
@ -647,7 +647,7 @@ public class MetrologyRepository : IMetrologyRepository
return headers; return headers;
} }
public IEnumerable<KeyValuePair<string, string>> GetHeaderFields(int toolTypeId, long headerid) internal IEnumerable<KeyValuePair<string, string>> GetHeaderFields(int toolTypeId, long headerid)
{ {
ToolType tt = GetToolTypeByID(toolTypeId); ToolType tt = GetToolTypeByID(toolTypeId);
if (tt is null) if (tt is null)
@ -694,7 +694,7 @@ public class MetrologyRepository : IMetrologyRepository
return r; return r;
} }
public IEnumerable<AwaitingDisposition> GetAwaitingDisposition() internal IEnumerable<AwaitingDisposition> GetAwaitingDisposition()
{ {
IEnumerable<AwaitingDisposition>? r; IEnumerable<AwaitingDisposition>? r;
if (!string.IsNullOrEmpty(_MockRoot)) if (!string.IsNullOrEmpty(_MockRoot))
@ -712,7 +712,7 @@ public class MetrologyRepository : IMetrologyRepository
return r; return r;
} }
public int UpdateReviewDate(int toolTypeId, long headerId, bool clearDate) internal int UpdateReviewDate(int toolTypeId, long headerId, bool clearDate)
{ {
ToolType tt = GetToolTypeByID(toolTypeId); ToolType tt = GetToolTypeByID(toolTypeId);
if (tt is null) if (tt is null)
@ -734,7 +734,7 @@ public class MetrologyRepository : IMetrologyRepository
} }
} }
public Guid GetHeaderAttachmentIDByTitle(int toolTypeId, string title) internal Guid GetHeaderAttachmentIDByTitle(int toolTypeId, string title)
{ {
ToolType tt = GetToolTypeByID(toolTypeId); ToolType tt = GetToolTypeByID(toolTypeId);
if (tt is null) if (tt is null)
@ -746,7 +746,7 @@ public class MetrologyRepository : IMetrologyRepository
return conn.ExecuteScalar<Guid>(sql, param: new { Title = title }); return conn.ExecuteScalar<Guid>(sql, param: new { Title = title });
} }
public Guid GetDataAttachmentIDByTitle(int toolTypeId, string title) internal Guid GetDataAttachmentIDByTitle(int toolTypeId, string title)
{ {
ToolType tt = GetToolTypeByID(toolTypeId); ToolType tt = GetToolTypeByID(toolTypeId);
if (tt is null) if (tt is null)
@ -759,4 +759,30 @@ public class MetrologyRepository : IMetrologyRepository
} }
DataTable IMetrologyRepository.GetDataSharePoint(int toolTypeId, string headerId) => throw new NotImplementedException(); DataTable IMetrologyRepository.GetDataSharePoint(int toolTypeId, string headerId) => throw new NotImplementedException();
IEnumerable<ToolType> IMetrologyRepository.GetToolTypes() => GetToolTypes();
ToolType IMetrologyRepository.GetToolTypeByName(string name) => GetToolTypeByName(name);
ToolType IMetrologyRepository.GetToolTypeByID(int id) => GetToolTypeByID(id);
IEnumerable<ToolTypeMetadata> IMetrologyRepository.GetToolTypeMetadataByToolTypeID(int id) => GetToolTypeMetadataByToolTypeID(id);
TransactionScope IMetrologyRepository.StartTransaction() => StartTransaction();
void IMetrologyRepository.PurgeExistingData(int toolTypeId, string title) => PurgeExistingData(toolTypeId, title);
long IMetrologyRepository.InsertToolDataJSON(JToken jsonbody, long headerId, List<ToolTypeMetadata> metaData, string tableName) => InsertToolDataJSON(jsonbody, headerId, metaData, tableName);
DataTable IMetrologyRepository.ExportData(string spName, DateTime startTime, DateTime endTime) => ExportData(spName, startTime, endTime);
DataTable IMetrologyRepository.GetHeaders(int toolTypeId, DateTime? startTime, DateTime? endTime, int? pageNo, int? pageSize, long? headerid, out long totalRecords) => GetHeaders(toolTypeId, startTime, endTime, pageNo, pageSize, headerid, out totalRecords);
DataTable IMetrologyRepository.GetData(int toolTypeId, long headerId) => GetData(toolTypeId, headerId);
IEnumerable<HeaderCommon> IMetrologyRepository.GetHeaderTitles(int toolTypeId, int? pageNo, int? pageSize, out long totalRecords) => GetHeaderTitles(toolTypeId, pageNo, pageSize, out totalRecords);
Guid IMetrologyRepository.GetHeaderAttachmentIDByTitle(int toolTypeId, string title) => GetHeaderAttachmentIDByTitle(toolTypeId, title);
Guid IMetrologyRepository.GetDataAttachmentIDByTitle(int toolTypeId, string title) => GetDataAttachmentIDByTitle(toolTypeId, title);
Guid IMetrologyRepository.GetHeaderAttachmentID(int toolTypeId, long headerId) => GetHeaderAttachmentID(toolTypeId, headerId);
string IMetrologyRepository.GetHeaderInsertDate(int toolTypeId, long headerId) => GetHeaderInsertDate(toolTypeId, headerId);
string IMetrologyRepository.GetAttachmentInsertDateByGUID(string tableName, Guid attachmentId) => GetAttachmentInsertDateByGUID(tableName, attachmentId);
void IMetrologyRepository.SetHeaderDirName(string tableName, long headerId, string dateDir) => SetHeaderDirName(tableName, headerId, dateDir);
Guid IMetrologyRepository.GetDataAttachmentID(int toolTypeId, long headerId, string title) => GetDataAttachmentID(toolTypeId, headerId, title);
string IMetrologyRepository.GetDataInsertDate(int toolTypeId, long headerId, string title) => GetDataInsertDate(toolTypeId, headerId, title);
void IMetrologyRepository.SetDataDirName(string tableName, long headerId, string title, string dateDir) => SetDataDirName(tableName, headerId, title, dateDir);
DataSet IMetrologyRepository.GetOIExportData(int toolTypeId, long headerid) => GetOIExportData(toolTypeId, headerid);
IEnumerable<KeyValuePair<string, string>> IMetrologyRepository.GetHeaderFields(int toolTypeId, long headerid) => GetHeaderFields(toolTypeId, headerid);
IEnumerable<AwaitingDisposition> IMetrologyRepository.GetAwaitingDisposition() => GetAwaitingDisposition();
int IMetrologyRepository.UpdateReviewDate(int toolTypeId, long headerId, bool clearDate) => UpdateReviewDate(toolTypeId, headerId, clearDate);
} }

View File

@ -1,9 +1,9 @@
namespace OI.Metrology.Shared.Models.Stateless; namespace OI.Metrology.Shared.Models.Stateless;
public interface IAppSettingsRepository public interface IAppSettingsRepository<T>
{ {
List<string> GetAppSettings(); T GetAppSettings();
string GetBuildNumberAndGitCommitSeven(); string GetBuildNumberAndGitCommitSeven();
} }

View File

@ -51,9 +51,9 @@ public class UnitTestAppSettingsController
{ {
_Logger.Information("Starting Web Application"); _Logger.Information("Starting Web Application");
IServiceProvider serviceProvider = _WebApplicationFactory.Services.CreateScope().ServiceProvider; IServiceProvider serviceProvider = _WebApplicationFactory.Services.CreateScope().ServiceProvider;
IAppSettingsRepository appSettingsRepository = serviceProvider.GetRequiredService<IAppSettingsRepository>(); IAppSettingsRepository<Server.Models.Binder.AppSettings> appSettingsRepository = serviceProvider.GetRequiredService<IAppSettingsRepository<Server.Models.Binder.AppSettings>>();
List<string> collection = appSettingsRepository.GetAppSettings(); Server.Models.Binder.AppSettings appSettings = appSettingsRepository.GetAppSettings();
Assert.IsTrue(collection is not null); Assert.IsTrue(appSettings is not null);
_Logger.Information($"{_TestContext?.TestName} completed"); _Logger.Information($"{_TestContext?.TestName} completed");
} }
@ -78,7 +78,7 @@ public class UnitTestAppSettingsController
{ {
_Logger.Information("Starting Web Application"); _Logger.Information("Starting Web Application");
IServiceProvider serviceProvider = _WebApplicationFactory.Services.CreateScope().ServiceProvider; IServiceProvider serviceProvider = _WebApplicationFactory.Services.CreateScope().ServiceProvider;
IAppSettingsRepository appSettingsRepository = serviceProvider.GetRequiredService<IAppSettingsRepository>(); IAppSettingsRepository<Server.Models.Binder.AppSettings> appSettingsRepository = serviceProvider.GetRequiredService<IAppSettingsRepository<Server.Models.Binder.AppSettings>>();
string result = appSettingsRepository.GetBuildNumberAndGitCommitSeven(); string result = appSettingsRepository.GetBuildNumberAndGitCommitSeven();
Assert.IsTrue(result is not null); Assert.IsTrue(result is not null);
_Logger.Information($"{_TestContext?.TestName} completed"); _Logger.Information($"{_TestContext?.TestName} completed");