X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/5c860fdbf28128e7d11a9dff8b5c30777c2cbfeb..64937458c5bc2918fa679c97478b2931bd26cfc1:/services/ws/server_test.go?ds=sidebyside diff --git a/services/ws/server_test.go b/services/ws/server_test.go index a0c4c8ccde..b1f943857a 100644 --- a/services/ws/server_test.go +++ b/services/ws/server_test.go @@ -1,6 +1,11 @@ +// Copyright (C) The Arvados Authors. All rights reserved. +// +// SPDX-License-Identifier: AGPL-3.0 + package main import ( + "encoding/json" "io/ioutil" "net/http" "sync" @@ -86,6 +91,21 @@ func (s *serverSuite) TestHealth(c *check.C) { } } +func (s *serverSuite) TestStatus(c *check.C) { + go s.srv.Run() + defer s.srv.Close() + s.srv.WaitReady() + req, err := http.NewRequest("GET", "http://"+s.srv.listener.Addr().String()+"/status.json", nil) + c.Assert(err, check.IsNil) + resp, err := http.DefaultClient.Do(req) + c.Check(err, check.IsNil) + c.Check(resp.StatusCode, check.Equals, http.StatusOK) + var status map[string]interface{} + err = json.NewDecoder(resp.Body).Decode(&status) + c.Check(err, check.IsNil) + c.Check(status["Version"], check.Not(check.Equals), "") +} + func (s *serverSuite) TestHealthDisabled(c *check.C) { s.cfg.ManagementToken = "" @@ -93,10 +113,12 @@ func (s *serverSuite) TestHealthDisabled(c *check.C) { defer s.srv.Close() s.srv.WaitReady() - req, err := http.NewRequest("GET", "http://"+s.srv.listener.Addr().String()+"/_health/ping", nil) - c.Assert(err, check.IsNil) - req.Header.Add("Authorization", "Bearer "+arvadostest.ManagementToken) - resp, err := http.DefaultClient.Do(req) - c.Check(err, check.IsNil) - c.Check(resp.StatusCode, check.Equals, http.StatusNotFound) + for _, token := range []string{"", "foo", arvadostest.ManagementToken} { + req, err := http.NewRequest("GET", "http://"+s.srv.listener.Addr().String()+"/_health/ping", nil) + c.Assert(err, check.IsNil) + req.Header.Add("Authorization", "Bearer "+token) + resp, err := http.DefaultClient.Do(req) + c.Check(err, check.IsNil) + c.Check(resp.StatusCode, check.Equals, http.StatusNotFound) + } }