X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/9b2aa42213a7d333bbe93e040c2d152a70e9b5af..46f0c0faf4f032697d59c2d663018ae67d1059d4:/sdk/go/dispatch/dispatch_test.go diff --git a/sdk/go/dispatch/dispatch_test.go b/sdk/go/dispatch/dispatch_test.go index 57b6126738..2a9d84639e 100644 --- a/sdk/go/dispatch/dispatch_test.go +++ b/sdk/go/dispatch/dispatch_test.go @@ -1,38 +1,40 @@ +// Copyright (C) The Arvados Authors. All rights reserved. +// +// SPDX-License-Identifier: Apache-2.0 + package dispatch import ( - "git.curoverse.com/arvados.git/sdk/go/arvados" - "git.curoverse.com/arvados.git/sdk/go/arvadosclient" - "git.curoverse.com/arvados.git/sdk/go/arvadostest" - "os/exec" + "time" + "git.arvados.org/arvados.git/sdk/go/arvados" + "git.arvados.org/arvados.git/sdk/go/arvadosclient" + "git.arvados.org/arvados.git/sdk/go/arvadostest" . "gopkg.in/check.v1" ) // Gocheck boilerplate -var _ = Suite(&DispatchTestSuite{}) - -type DispatchTestSuite struct{} +var _ = Suite(&suite{}) -func (s *DispatchTestSuite) SetUpSuite(c *C) { - arvadostest.StartAPI() -} +type suite struct{} -func (s *DispatchTestSuite) TearDownSuite(c *C) { - arvadostest.StopAPI() -} - -func (s *DispatchTestSuite) TestTrackContainer(c *C) { +func (s *suite) TestTrackContainer(c *C) { arv, err := arvadosclient.MakeArvadosClient() c.Assert(err, Equals, nil) - - runContainer := func(d *Dispatcher, ctr arvados.Container) *exec.Cmd { return exec.Command("echo") } - d := &Dispatcher{Arv: arv, RunContainer: func(dsp *Dispatcher, ctr arvados.Container, status <-chan arvados.Container) { - go runContainer(dsp, ctr) - }} - d.trackers = make(map[string]*runTracker) - - d.TrackContainer(arvadostest.QueuedContainerUuid) - _, tracking := d.trackers[arvadostest.QueuedContainerUuid] - c.Assert(tracking, Equals, true) + arv.ApiToken = arvadostest.Dispatch1Token + + done := make(chan bool, 1) + time.AfterFunc(10*time.Second, func() { done <- false }) + d := &Dispatcher{ + Arv: arv, + RunContainer: func(dsp *Dispatcher, ctr arvados.Container, status <-chan arvados.Container) error { + for ctr := range status { + c.Logf("%#v", ctr) + } + done <- true + return nil + }, + } + d.TrackContainer(arvadostest.QueuedContainerUUID) + c.Assert(<-done, Equals, true) }