You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
56 lines
1.5 KiB
C#
56 lines
1.5 KiB
C#
using Microsoft.Extensions.Configuration;
|
|
|
|
namespace OptionStudy.UnitApp
|
|
{
|
|
|
|
/// <summary>
|
|
/// 以键值对的形式读取配置信息
|
|
/// </summary>
|
|
public class LoadKeyValueConfigTest:IDisposable
|
|
{
|
|
|
|
private readonly ITestOutputHelper? testOutput;
|
|
public LoadKeyValueConfigTest(ITestOutputHelperAccessor helperAccessor)
|
|
{
|
|
testOutput = helperAccessor.Output;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 读取键值对配置
|
|
/// </summary>
|
|
[Fact]
|
|
public void ReadKeyValue_Test()
|
|
{
|
|
//配置字典
|
|
var source = new Dictionary<string, string?>()
|
|
{
|
|
["AppName"]="MemoryAppName",
|
|
["AppVersion"]="2.1.2.3",
|
|
};
|
|
|
|
ConfigurationBuilder builder = new ConfigurationBuilder();
|
|
builder.AddInMemoryCollection(source);
|
|
|
|
var config = builder.Build();
|
|
|
|
var appOption = new AppOption()
|
|
{
|
|
AppName = config["AppName"]??"",
|
|
AppVersion = config["AppVersion"] ?? "",
|
|
};
|
|
|
|
//断言
|
|
Assert.NotNull(appOption);
|
|
Assert.Equal("MemoryAppName", appOption.AppName);
|
|
Assert.Equal("2.1.2.3", appOption.AppVersion);
|
|
|
|
testOutput?.WriteLine("测试信息输出,对测试输出说明信息呗!");
|
|
}
|
|
|
|
public void Dispose()
|
|
{
|
|
|
|
}
|
|
}
|
|
}
|