package config_manager_go import ( "testing" //"github.com/stretchr/testify/assert" "encoding/json" "github.com/google/uuid" "io/ioutil" "git.loafle.net/overflow/agent_api/config_manager" "git.loafle.net/overflow/agent_api/messages" "git.loafle.net/overflow/agent_api/observer" "log" "time" ) func TestLoadConfig(t *testing.T) { // notify temp channel //ch := make(chan interface{},0) //observer.Add(messages.CFG_LOADED,ch) //go func() { // data :=<- ch // c := data.(config_manager.ConfigManager) // cc := c.GetSensors() // assert.NotEqual(t, len(cc),0) //}() // make config manager after to load //c := NewConfigManager() //c.loadGlobalConfig("/root/gowork/src/loafle.com/overflow/config_manager_go/test_agent/global.yaml") //c.loadCrawlerConfigAll() // //assert.NotEqual(t, len(c.configs),0) //observer.Notify(messages.CFG_LOADED,c) //time.Sleep(1 * time.Second) } func TestAddConfig(t *testing.T) { _configManager.loadGlobalConfig("/root/gowork/src/loafle.com/overflow/config_manager_go/test_agent/global.yaml") // 원본 테스트 설정 파일 로드 b, err := ioutil.ReadFile("/root/gowork/src/loafle.com/overflow/config_manager_go/test_agent/test.json") if err != nil { log.Panic(err) } var m = config_manager.Config{} json.Unmarshal(b, &m) // uuid로 원본 파일 복제 rid, _ := uuid.NewRandom() m.Id = rid.String() b, err = json.Marshal(&m) ioutil.WriteFile("/root/gowork/src/loafle.com/overflow/config_manager_go/test_agent/"+m.Id, b, 0644) // add test observer.Notify(messages.TASK_SENSOR_ADD, "/root/gowork/src/loafle.com/overflow/config_manager_go/test_agent/"+m.Id) time.Sleep(1 * time.Second) } func TestRemoveConfig(t *testing.T) { GetInstance() _configManager.loadGlobalConfig("/home/snoop/develop/path/go/src/loafle.com/overflow/config_manager_go/test_agent/global.yaml") _configManager.loadCrawlerConfigAll() // remove test //observer.Notify(messages.TASK_SENSOR_REMOVE,"d0fcc7b1-43a7-4acd-a7bf-c9572a9d4c9e") time.Sleep(1 * time.Second) }