+// Copyright (C) The Arvados Authors. All rights reserved.
+//
+// SPDX-License-Identifier: AGPL-3.0
+
package main
import (
resp := s.call("GET", "/mounts", "")
c.Check(resp.Code, check.Equals, http.StatusOK)
var mntList []struct {
- UUID string
+ UUID string
+ DeviceID string
+ ReadOnly bool
+ Replication int
+ Tier int
}
err := json.Unmarshal(resp.Body.Bytes(), &mntList)
- c.Check(err, check.IsNil)
- c.Check(len(mntList), check.Equals, 2)
+ c.Assert(err, check.IsNil)
+ c.Assert(len(mntList), check.Equals, 2)
+ for _, m := range mntList {
+ c.Check(len(m.UUID), check.Equals, 27)
+ c.Check(m.UUID[:12], check.Equals, "zzzzz-ivpuk-")
+ c.Check(m.DeviceID, check.Equals, "mock-device-id")
+ c.Check(m.ReadOnly, check.Equals, false)
+ c.Check(m.Replication, check.Equals, 1)
+ c.Check(m.Tier, check.Equals, 1)
+ }
+ c.Check(mntList[0].UUID, check.Not(check.Equals), mntList[1].UUID)
// Bad auth
for _, tok := range []string{"", "xyzzy"} {
c.Check(resp.Body.String(), check.Matches, TestHash+`\+[0-9]+ [0-9]+\n\n`)
// Partial index of first mount (one block matches prefix)
- resp = s.call("GET", "/mounts/"+mntList[0].UUID+"/blocks/"+TestHash[:2], tok)
+ resp = s.call("GET", "/mounts/"+mntList[0].UUID+"/blocks?prefix="+TestHash[:2], tok)
c.Check(resp.Code, check.Equals, http.StatusOK)
c.Check(resp.Body.String(), check.Matches, TestHash+`\+[0-9]+ [0-9]+\n\n`)
c.Check(resp.Body.String(), check.Matches, TestHash2+`\+[0-9]+ [0-9]+\n\n`)
// Partial index of second mount (no blocks match prefix)
- resp = s.call("GET", "/mounts/"+mntList[1].UUID+"/blocks/"+TestHash[:2], tok)
+ resp = s.call("GET", "/mounts/"+mntList[1].UUID+"/blocks/?prefix="+TestHash[:2], tok)
c.Check(resp.Code, check.Equals, http.StatusOK)
c.Check(resp.Body.String(), check.Equals, "\n")
}