@@ -139,6 +139,27 @@ func Test_ObservationSystemConfigMerge(t *testing.T) {
139139 require .Equal (t , "0777" , merged .Observations .FileMode )
140140}
141141
142+ // Test_ObservationSystemConfigMergeFromNoObservations checks merge for observation system config from a config
143+ // without an observation system defined
144+ func Test_ObservationSystemConfigMergeFromNoObservations (t * testing.T ) {
145+ config , err := LoadConfigFile ("./test-fixtures/config.hcl" )
146+ require .NoError (t , err )
147+ require .NotNil (t , config )
148+
149+ config2 , err := LoadConfigFile ("./test-fixtures/observations_allow_deny.hcl" )
150+ require .NoError (t , err )
151+ require .NotNil (t , config2 )
152+
153+ merged := config .Merge (config2 )
154+ require .NotNil (t , merged )
155+ require .NotNil (t , merged .Observations )
156+ require .Equal (t , "/var/ledger.log" , merged .Observations .LedgerPath )
157+ require .Equal (t , []string {"deny1" , "deny2" }, merged .Observations .TypePrefixDenylist )
158+ require .Equal (t , []string {"allow1" , "allow2" , "allow3" }, merged .Observations .TypePrefixAllowlist )
159+ require .Equal (t , "0777" , merged .Observations .FileMode )
160+ require .Equal (t , true , merged .EnableUI )
161+ }
162+
142163// TestDuplicateKeyValidationHcl checks that the server command displays a warning when the HCL config file contains duplicate keys.
143164func TestDuplicateKeyValidationHcl (t * testing.T ) {
144165 testDuplicateKeyValidationHcl (t )
0 commit comments