X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/380a54a7d97b34119cbaa3bee05d6b6cd241eee5..3911cd836c4e937262d48f9b0af703a9d7d68cdd:/lib/controller/federation_test.go diff --git a/lib/controller/federation_test.go b/lib/controller/federation_test.go index f7735a3053..c654277fea 100644 --- a/lib/controller/federation_test.go +++ b/lib/controller/federation_test.go @@ -83,6 +83,9 @@ func (s *FederationSuite) SetUpTest(c *check.C) { Proxy: true, Scheme: "http", }, + "*": { + Scheme: "https", + }, } c.Assert(s.testServer.Start(), check.IsNil) @@ -134,7 +137,7 @@ func (s *FederationSuite) TestNoAuth(c *check.C) { req := httptest.NewRequest("GET", "/arvados/v1/workflows/"+arvadostest.WorkflowWithDefinitionYAMLUUID, nil) resp := s.testRequest(req).Result() c.Check(resp.StatusCode, check.Equals, http.StatusUnauthorized) - s.checkJSONErrorMatches(c, resp, `Not logged in`) + s.checkJSONErrorMatches(c, resp, `Not logged in.*`) } func (s *FederationSuite) TestBadAuth(c *check.C) { @@ -142,7 +145,7 @@ func (s *FederationSuite) TestBadAuth(c *check.C) { req.Header.Set("Authorization", "Bearer aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") resp := s.testRequest(req).Result() c.Check(resp.StatusCode, check.Equals, http.StatusUnauthorized) - s.checkJSONErrorMatches(c, resp, `Not logged in`) + s.checkJSONErrorMatches(c, resp, `Not logged in.*`) } func (s *FederationSuite) TestNoAccess(c *check.C) { @@ -150,7 +153,7 @@ func (s *FederationSuite) TestNoAccess(c *check.C) { req.Header.Set("Authorization", "Bearer "+arvadostest.SpectatorToken) resp := s.testRequest(req).Result() c.Check(resp.StatusCode, check.Equals, http.StatusNotFound) - s.checkJSONErrorMatches(c, resp, `.*not found`) + s.checkJSONErrorMatches(c, resp, `.*not found.*`) } func (s *FederationSuite) TestGetUnknownRemote(c *check.C) { @@ -467,6 +470,10 @@ func (s *FederationSuite) TestGetRemoteCollectionByPDH(c *check.C) { func (s *FederationSuite) TestGetCollectionByPDHError(c *check.C) { defer s.localServiceReturns404(c).Close() + // zmock's normal response (200 with an empty body) would + // change the outcome from 404 to 502 + delete(s.testHandler.Cluster.RemoteClusters, "zmock") + req := httptest.NewRequest("GET", "/arvados/v1/collections/99999999999999999999999999999999+99", nil) req.Header.Set("Authorization", "Bearer "+arvadostest.ActiveToken) @@ -479,6 +486,10 @@ func (s *FederationSuite) TestGetCollectionByPDHError(c *check.C) { func (s *FederationSuite) TestGetCollectionByPDHErrorBadHash(c *check.C) { defer s.localServiceReturns404(c).Close() + // zmock's normal response (200 with an empty body) would + // change the outcome + delete(s.testHandler.Cluster.RemoteClusters, "zmock") + srv2 := &httpserver.Server{ Server: http.Server{ Handler: http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) { @@ -512,7 +523,7 @@ func (s *FederationSuite) TestGetCollectionByPDHErrorBadHash(c *check.C) { resp := s.testRequest(req).Result() defer resp.Body.Close() - c.Check(resp.StatusCode, check.Equals, http.StatusNotFound) + c.Check(resp.StatusCode, check.Equals, http.StatusBadGateway) } func (s *FederationSuite) TestSaltedTokenGetCollectionByPDH(c *check.C) { @@ -534,6 +545,10 @@ func (s *FederationSuite) TestSaltedTokenGetCollectionByPDH(c *check.C) { func (s *FederationSuite) TestSaltedTokenGetCollectionByPDHError(c *check.C) { arvadostest.SetServiceURL(&s.testHandler.Cluster.Services.RailsAPI, "https://"+os.Getenv("ARVADOS_TEST_API_HOST")) + // zmock's normal response (200 with an empty body) would + // change the outcome + delete(s.testHandler.Cluster.RemoteClusters, "zmock") + req := httptest.NewRequest("GET", "/arvados/v1/collections/99999999999999999999999999999999+99", nil) req.Header.Set("Authorization", "Bearer v2/zzzzz-gj3su-077z32aux8dg2s1/282d7d172b6cfdce364c5ed12ddf7417b2d00065") resp := s.testRequest(req).Result()