using Microsoft.Extensions.Configuration;
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
namespace AWS.Logger.AspNetCore.Tests
{
///
/// provides access to methods helpful when dealing with configuration in .net core JSON form
///
public class TestConfigurationBase
{
///
/// read IConfiguration from a JSON file, for testing purposes
///
///
///
///
/// IConfiguration from a JSON file
public IConfiguration LoggerConfigSectionSetup(string jsonFileName, string configSectionInfoBlockName, [System.Runtime.CompilerServices.CallerFilePath]string sourceFilePath = "")
{
var configurationBuilder = new ConfigurationBuilder()
.SetBasePath(Path.GetDirectoryName(sourceFilePath))
.AddJsonFile(jsonFileName);
IConfiguration Config;
if (configSectionInfoBlockName != null)
{
Config = configurationBuilder
.Build()
.GetSection(configSectionInfoBlockName);
}
else
{
Config = configurationBuilder
.Build()
.GetSection("AWS.Logging");
}
return Config;
}
}
}