@@ -29,7 +29,7 @@ public void TestLoadConfigV1Json()
2929 {
3030 var config = _configLoader . LoadConfigJson < ServerSettingsV1 > ( Path . Combine (
3131 TestContext . CurrentContext . TestDirectory , "Resources/TestV1.json" ) ) ;
32- VerifyConfig ( new ServerSettingsV1Adapter ( config ) , false ) ;
32+ VerifyConfig ( new ServerSettingsV1Adapter ( config ) , false , true ) ;
3333 }
3434
3535 [ Test ]
@@ -39,15 +39,15 @@ public void TestLoadConfigEnv()
3939 TestContext . CurrentContext . TestDirectory , "Resources/TestV1.json" ) ) ;
4040
4141 var config = _configLoader . LoadConfigFromDictionary < ServerSettingsV1 > ( ToDictionary ( jsonConfig ) ) ;
42- VerifyConfig ( new ServerSettingsV1Adapter ( config ) , false ) ;
42+ VerifyConfig ( new ServerSettingsV1Adapter ( config ) , false , true ) ;
4343 }
4444
4545 [ Test ]
4646 public void TestLoadConfigV2Json ( )
4747 {
4848 var config = _configLoader . LoadConfigJson < ServerSettings > ( Path . Combine (
4949 TestContext . CurrentContext . TestDirectory , "Resources/TestV2.json" ) ) ;
50- VerifyConfig ( config , true ) ;
50+ VerifyConfig ( config , true , false ) ;
5151 }
5252
5353 [ Test ]
@@ -65,26 +65,26 @@ public void TestLoadConfigV2Yaml()
6565 {
6666 var config = _configLoader . LoadConfigYaml < ServerSettings > ( Path . Combine (
6767 TestContext . CurrentContext . TestDirectory , "Resources/TestV2.yml" ) ) ;
68- VerifyConfig ( config , true ) ;
68+ VerifyConfig ( config , true , false ) ;
6969 }
7070
71- private void VerifyConfig ( IServerSettings serverSettings , bool usePrefix )
71+ private void VerifyConfig ( IServerSettings serverSettings , bool usePrefix , bool expectNullApiKeyFile )
7272 {
7373 VerifyProperties ( serverSettings . GeneralSettings ) ;
74- VerifyAccounts ( serverSettings . Accounts , usePrefix ) ;
74+ VerifyAccounts ( serverSettings . Accounts , usePrefix , expectNullApiKeyFile ) ;
7575 }
7676
77- private void VerifyAccounts ( IEnumerable < IAccountSettings > accounts , bool usePrefix )
77+ private void VerifyAccounts ( IEnumerable < IAccountSettings > accounts , bool usePrefix , bool expectNullApiKeyFile )
7878 {
7979 var idx = 1 ;
8080 foreach ( var account in accounts )
8181 {
82- VerifyProperties ( account , usePrefix ? "Account" + idx + "." : "" ) ;
82+ VerifyProperties ( account , usePrefix ? "Account" + idx + "." : "" , expectNullApiKeyFile ) ;
8383 idx ++ ;
8484 }
8585 }
8686
87- private void VerifyProperties ( object o , string ? prefix = "" )
87+ private void VerifyProperties ( object o , string ? prefix = "" , bool expectNullApiKeyFile = false )
8888 {
8989 foreach ( var prop in o . GetType ( ) . GetProperties ( ) )
9090 {
@@ -107,7 +107,14 @@ private void VerifyProperties(object o, string? prefix = "")
107107 switch ( type )
108108 {
109109 case var t when t == typeof ( string ) :
110- Assert . That ( value , Is . EqualTo ( prefix + prop . Name + "_TEST" ) , prop . Name ) ;
110+ if ( prop . Name . Equals ( "ApiKeyFile" ) && expectNullApiKeyFile )
111+ {
112+ Assert . That ( value , Is . EqualTo ( null ) , prop . Name ) ;
113+ }
114+ else
115+ {
116+ Assert . That ( value , Is . EqualTo ( prefix + prop . Name + "_TEST" ) , prop . Name ) ;
117+ }
111118 break ;
112119 case var t when t == typeof ( Boolean ) :
113120 Assert . That ( value , Is . EqualTo ( true ) , prop . Name ) ;
@@ -171,4 +178,4 @@ public static IDictionary ToDictionary(object obj, bool ignoreNullValues = false
171178 return dictionary ;
172179 }
173180
174- }
181+ }
0 commit comments