18790: Fix .../containers/.../log routing.
[arvados.git] / lib / controller / federation_test.go
index eb398695bf0b1e369cdfdc9ca871a77128413b08..4fbb3440ed377103da603db406d2c4b29eeacd63 100644 (file)
@@ -32,6 +32,9 @@ import (
 var _ = check.Suite(&FederationSuite{})
 
 type FederationSuite struct {
+       ctx    context.Context
+       cancel context.CancelFunc
+
        log logrus.FieldLogger
        // testServer and testHandler are the controller being tested,
        // "zhome".
@@ -48,6 +51,7 @@ type FederationSuite struct {
 }
 
 func (s *FederationSuite) SetUpTest(c *check.C) {
+       s.ctx, s.cancel = context.WithCancel(context.Background())
        s.log = ctxlog.TestLogger(c)
 
        s.remoteServer = newServerFromIntegrationTestEnv(c)
@@ -70,7 +74,7 @@ func (s *FederationSuite) SetUpTest(c *check.C) {
        cluster.Collections.BlobSigningTTL = arvados.Duration(time.Hour * 24 * 14)
        arvadostest.SetServiceURL(&cluster.Services.RailsAPI, "http://localhost:1/")
        arvadostest.SetServiceURL(&cluster.Services.Controller, "http://localhost:/")
-       s.testHandler = &Handler{Cluster: cluster, BackgroundContext: ctxlog.Context(context.Background(), s.log)}
+       s.testHandler = &Handler{Cluster: cluster, BackgroundContext: ctxlog.Context(s.ctx, s.log)}
        s.testServer = newServerFromIntegrationTestEnv(c)
        s.testServer.Server.BaseContext = func(net.Listener) context.Context {
                return ctxlog.Context(context.Background(), s.log)
@@ -115,6 +119,7 @@ func (s *FederationSuite) TearDownTest(c *check.C) {
        if s.testServer != nil {
                s.testServer.Close()
        }
+       s.cancel()
 }
 
 func (s *FederationSuite) testRequest(req *http.Request) *httptest.ResponseRecorder {
@@ -721,7 +726,7 @@ func (s *FederationSuite) TestCreateRemoteContainerRequestCheckRuntimeToken(c *c
        var aca arvados.APIClientAuthorization
        c.Check(json.NewDecoder(resp.Body).Decode(&aca), check.IsNil)
        c.Check(aca.ExpiresAt, check.NotNil) // Time.Now()+BlobSigningTTL
-       t, _ := time.Parse(time.RFC3339Nano, aca.ExpiresAt)
+       t := aca.ExpiresAt
        c.Check(t.After(time.Now().Add(s.testHandler.Cluster.API.MaxTokenLifetime.Duration())), check.Equals, true)
        c.Check(t.Before(time.Now().Add(s.testHandler.Cluster.Collections.BlobSigningTTL.Duration())), check.Equals, true)
 }