@@ -77,13 +77,20 @@ func TestReaper_LoadSources(t *testing.T) {
7777 source2 := sources.Source {Name : "Source 2" , IsEnabled : true , Kind : sources .SourcePostgres , Group : "group1" }
7878 source3 := sources.Source {Name : "Source 3" , IsEnabled : true , Kind : sources .SourcePostgres , Group : "group2" }
7979 source4 := sources.Source {Name : "Source 4" , IsEnabled : true , Kind : sources .SourcePostgres , Group : "default" } // Default group should not filter
80- reader := & mockReader {toReturn : sources.Sources {source1 , source2 , source3 , source4 }}
81- r := NewReaper (ctx , & cmdopts.Options {SourcesReaderWriter : reader , Sources : sources.CmdOpts {Groups : []string {"group1" , "group2" }}})
80+ newReader := func () sources.ReaderWriter {
81+ return & mockReader {toReturn : sources.Sources {source1 , source2 , source3 , source4 }}
82+ }
83+
84+ r := NewReaper (ctx , & cmdopts.Options {SourcesReaderWriter : newReader (), Sources : sources.CmdOpts {Groups : []string {"group1" , "group2" }}})
8285 assert .NoError (t , r .LoadSources ())
83- assert .Equal (t , 4 , len (r .monitoredSources ), "Expected three monitored sources after load" )
86+ assert .Equal (t , 4 , len (r .monitoredSources ), "Expected four monitored sources after load" )
8487
85- r . Sources . Groups = []string {"group1" }
88+ r = NewReaper ( ctx , & cmdopts. Options { SourcesReaderWriter : newReader (), Sources : sources. CmdOpts { Groups : []string {"group1" }}})
8689 assert .NoError (t , r .LoadSources ())
8790 assert .Equal (t , 3 , len (r .monitoredSources ), "Expected three monitored sources after group filtering" )
91+
92+ r = NewReaper (ctx , & cmdopts.Options {SourcesReaderWriter : newReader ()})
93+ assert .NoError (t , r .LoadSources ())
94+ assert .Equal (t , 4 , len (r .monitoredSources ), "Expected four monitored sources after resetting groups" )
8895 })
8996}
0 commit comments