X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/91a7feea5074d303cb0eae3f5c0d53b61d37fc81..654ee9154fe85832a0862c27fd7b982831a75a0d:/services/keep-web/handler_test.go diff --git a/services/keep-web/handler_test.go b/services/keep-web/handler_test.go index d394659033..d0e92ee079 100644 --- a/services/keep-web/handler_test.go +++ b/services/keep-web/handler_test.go @@ -1,3 +1,7 @@ +// Copyright (C) The Arvados Authors. All rights reserved. +// +// SPDX-License-Identifier: AGPL-3.0 + package main import ( @@ -39,7 +43,7 @@ func (s *UnitSuite) TestCORSPreflight(c *check.C) { c.Check(resp.Code, check.Equals, http.StatusOK) c.Check(resp.Body.String(), check.Equals, "") c.Check(resp.Header().Get("Access-Control-Allow-Origin"), check.Equals, "*") - c.Check(resp.Header().Get("Access-Control-Allow-Methods"), check.Equals, "GET, POST") + c.Check(resp.Header().Get("Access-Control-Allow-Methods"), check.Equals, "GET, POST, OPTIONS, PROPFIND, LOCK, UNLOCK") c.Check(resp.Header().Get("Access-Control-Allow-Headers"), check.Equals, "Range") // Check preflight for a disallowed request @@ -585,3 +589,24 @@ func (s *IntegrationSuite) TestDirectoryListing(c *check.C) { } } } + +func (s *IntegrationSuite) TestHealthCheckPing(c *check.C) { + s.testServer.Config.ManagementToken = arvadostest.ManagementToken + authHeader := http.Header{ + "Authorization": {"Bearer " + arvadostest.ManagementToken}, + } + + resp := httptest.NewRecorder() + u := mustParseURL("http://download.example.com/_health/ping") + req := &http.Request{ + Method: "GET", + Host: u.Host, + URL: u, + RequestURI: u.RequestURI(), + Header: authHeader, + } + s.testServer.Handler.ServeHTTP(resp, req) + + c.Check(resp.Code, check.Equals, http.StatusOK) + c.Check(resp.Body.String(), check.Matches, `{"health":"OK"}\n`) +}