mirror of
https://github.com/simon987/task_tracker.git
synced 2025-04-19 10:16:41 +00:00
106 lines
1.8 KiB
Go
106 lines
1.8 KiB
Go
package test
|
|
|
|
import (
|
|
"github.com/simon987/task_tracker/api"
|
|
"github.com/simon987/task_tracker/client"
|
|
"github.com/simon987/task_tracker/config"
|
|
"github.com/simon987/task_tracker/storage"
|
|
"testing"
|
|
)
|
|
|
|
func TestClientMakeWorker(t *testing.T) {
|
|
|
|
c := client.New(config.Cfg.ServerAddr)
|
|
w, err := c.MakeWorker("test")
|
|
|
|
if err != nil {
|
|
t.Error()
|
|
}
|
|
|
|
if w.Alias != "test" {
|
|
t.Error()
|
|
}
|
|
}
|
|
|
|
func TestClientFetchTaskNoTaskAvailable(t *testing.T) {
|
|
|
|
c := client.New(config.Cfg.ServerAddr)
|
|
w, _ := c.MakeWorker("test")
|
|
c.SetWorker(w)
|
|
|
|
_, err := c.FetchTask(89988)
|
|
|
|
if err != nil {
|
|
t.Error()
|
|
}
|
|
}
|
|
|
|
func TestClientFetchTask(t *testing.T) {
|
|
|
|
c := client.New(config.Cfg.ServerAddr)
|
|
w, _ := c.MakeWorker("test")
|
|
c.SetWorker(w)
|
|
|
|
createTask(api.SubmitTaskRequest{
|
|
Project: testProject,
|
|
Recipe: " ",
|
|
}, testWorker)
|
|
|
|
requestAccess(api.CreateWorkerAccessRequest{
|
|
Project: testProject,
|
|
Submit: false,
|
|
Assign: true,
|
|
}, &storage.Worker{
|
|
Secret: w.Secret,
|
|
Id: w.Id,
|
|
})
|
|
acceptAccessRequest(testProject, w.Id, testAdminCtx)
|
|
|
|
resp, err := c.FetchTask(int(testProject))
|
|
|
|
if err != nil {
|
|
t.Error()
|
|
}
|
|
|
|
if resp.Content.Task == nil {
|
|
t.Error()
|
|
}
|
|
}
|
|
|
|
func TestClientReleaseTask(t *testing.T) {
|
|
|
|
c := client.New(config.Cfg.ServerAddr)
|
|
w, _ := c.MakeWorker("test")
|
|
c.SetWorker(w)
|
|
|
|
createTask(api.SubmitTaskRequest{
|
|
Project: testProject,
|
|
Recipe: " ",
|
|
}, testWorker)
|
|
|
|
requestAccess(api.CreateWorkerAccessRequest{
|
|
Project: testProject,
|
|
Submit: false,
|
|
Assign: true,
|
|
}, &storage.Worker{
|
|
Secret: w.Secret,
|
|
Id: w.Id,
|
|
})
|
|
acceptAccessRequest(testProject, w.Id, testAdminCtx)
|
|
|
|
fetchResp, _ := c.FetchTask(int(testProject))
|
|
|
|
resp, err := c.ReleaseTask(api.ReleaseTaskRequest{
|
|
TaskId: fetchResp.Content.Task.Id,
|
|
Result: storage.TR_OK,
|
|
})
|
|
|
|
if err != nil {
|
|
t.Error()
|
|
}
|
|
|
|
if resp.Content.Updated != true {
|
|
t.Error()
|
|
}
|
|
}
|