本文整理匯總了Golang中github.com/microscaling/microscaling/demand.Tasks.Tasks方法的典型用法代碼示例。如果您正苦於以下問題:Golang Tasks.Tasks方法的具體用法?Golang Tasks.Tasks怎麽用?Golang Tasks.Tasks使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/microscaling/microscaling/demand.Tasks
的用法示例。
在下文中一共展示了Tasks.Tasks方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: TestToyScheduler
func TestToyScheduler(t *testing.T) {
var tasks = demand.Tasks{}
tasks.Tasks = make([]*demand.Task, 1)
task := demand.Task{Name: "anything", Demand: 8, Requested: 3}
tasks.Tasks[0] = &task
m := NewScheduler()
m.InitScheduler(&task)
log.Debugf("before start/stop: demand %d, requested %d, running %d", task.Demand, task.Requested, task.Running)
err := m.StopStartTasks(&tasks)
if err != nil {
t.Fatalf("Error %v", err)
}
log.Debugf("after start/stop: demand %d, requested %d, running %d", task.Demand, task.Requested, task.Running)
if err != nil {
t.Fatalf("Error. %v", err)
} else if task.Requested != task.Demand {
t.Fatalf("Requested should have been updated")
}
err = m.CountAllTasks(&tasks)
for name, task := range tasks.Tasks {
if task.Running != task.Requested || task.Running != task.Demand {
t.Fatalf("Task %s running is not what was requested or demanded", name)
}
log.Debugf("after counting: demand %d, requested %d, running %d", task.Demand, task.Requested, task.Running)
}
}
示例2: TestDockerScheduler
func TestDockerScheduler(t *testing.T) {
d := NewScheduler(true, "unix:///var/run/docker.sock")
server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
}))
d.client, _ = docker.NewClient(server.URL)
var task demand.Task
task.Demand = 5
task.Image = "microscaling/priority-1:latest"
d.InitScheduler(&task)
d.startTask(&task)
// TODO! Some Docker tests that mock out the Docker client
var tasks demand.Tasks
tasks.Tasks = make([]*demand.Task, 1)
tasks.Tasks = append(tasks.Tasks, &task)
d.CountAllTasks(&tasks)
}
示例3: TestServerMonitor
func TestServerMonitor(t *testing.T) {
var tasks demand.Tasks
tasks.Tasks = make([]*demand.Task, 2)
tasks.Tasks[0] = &demand.Task{Name: "priority1", Demand: 8, Requested: 3, Running: 4}
tasks.Tasks[1] = &demand.Task{Name: "priority2", Demand: 2, Requested: 7, Running: 5}
server := httptest.NewServer(websocket.Handler(testServerMetrics))
serverAddr := server.Listener.Addr().String()
ws, err := utils.InitWebSocket(serverAddr)
if err != nil {
t.Fatal("dialing", err)
}
s := NewServerMonitor(ws, "hello")
if s.userID != "hello" {
t.Fatal("Didn't set userID")
}
s.SendMetrics(&tasks)
ws.Close()
server.Close()
}
示例4: TestSendMetrics
func TestSendMetrics(t *testing.T) {
var tasks demand.Tasks
tasks.Tasks = make([]*demand.Task, 2)
tasks.Tasks[0] = &demand.Task{Name: "priority1", Demand: 8, Requested: 3, Running: 4}
tasks.Tasks[1] = &demand.Task{Name: "priority2", Demand: 2, Requested: 7, Running: 5}
globalT = t
for testIndex = range tests {
server := httptest.NewServer(websocket.Handler(testServerMetrics))
serverAddr := server.Listener.Addr().String()
ws, err := utils.InitWebSocket(serverAddr)
if err != nil {
t.Fatal("dialing", err)
}
SendMetrics(ws, "hello", &tasks)
ws.Close()
server.Close()
}
}