using NewLife;
using Xunit;
namespace XUnitTest.Configuration;
/// <summary>æ ¸å¿ƒé…置测试</summary>
public class SettingTests
{
[Fact(DisplayName = "Setting.Currentä¸ä¸ºç©º")]
public void CurrentIsNotNull()
{
var setting = Setting.Current;
Assert.NotNull(setting);
}
[Fact(DisplayName = "默认日志级别为Info")]
public void DefaultLogLevel()
{
var setting = Setting.Current;
Assert.NotNull(setting);
// 默认日志级别应为 Info
Assert.Equal(NewLife.Log.LogLevel.Info, setting.LogLevel);
}
[Fact(DisplayName = "默认调试开关为true")]
public void DefaultDebug()
{
var setting = Setting.Current;
Assert.NotNull(setting);
Assert.True(setting.Debug);
}
[Fact(DisplayName = "属性读写")]
public void PropertyReadWrite()
{
var setting = Setting.Current;
Assert.NotNull(setting);
// 备份原始值。这里选å–ä¸å½±å“å…¨å±€å·¥ä½œç›®å½•çš„å—æ®µï¼š
// 瞬时改写 DataPath 会与并行用例读å–è¯¥å—æ®µï¼ˆå¦‚ SevenZipTests å–工作目录)产生竞æ€
var original = setting.ServiceAddress;
// 设置临时值
setting.ServiceAddress = "http://127.0.0.1:8080/";
Assert.Equal("http://127.0.0.1:8080/", setting.ServiceAddress);
// æ¢å¤
setting.ServiceAddress = original;
// æ’ä»¶æœåŠ¡å™¨åœ°å€åº”为默认值
Assert.NotNull(setting.PluginServer);
}
[Fact(DisplayName = "æ—¥å¿—æ–‡ä»¶æ ¼å¼é»˜è®¤å€¼")]
public void LogFileFormatDefault()
{
var setting = Setting.Current;
Assert.NotNull(setting);
Assert.Equal("{0:yyyy_MM_dd}.log", setting.LogFileFormat);
Assert.Equal(10, setting.LogFileMaxBytes);
Assert.Equal(200, setting.LogFileBackups);
}
}
|