package scheduler_test import ( "log" "testing" "time" "git.loafle.net/commons/util-go/time/scheduler" "git.loafle.net/commons/util-go/time/scheduler/storage" ) func TestDiscoverPort(t *testing.T) { _storage := storage.NewMemoryStorage() s := scheduler.New(_storage) // Start a task with arguments tID1, err := s.RunEvery(1*time.Second, TaskWithArgs, "Hello from recurring task 1") if err != nil { log.Fatal(err) } // Start the same task as above with a different argument _, err = s.RunEvery(4*time.Second, TaskWithArgs, "Hello from recurring task 2") if err != nil { log.Fatal(err) } s.Start() time.Sleep(4 * time.Second) s.Cancel(tID1) s.Wait() } func TaskWithoutArgs() { log.Println("TaskWithoutArgs is executed") } func TaskWithArgs(message string) { log.Println("TaskWithArgs is executed. message:", message) }