X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/7d4e2e418a987a454d18902a937fc91bed69ce75..d70538d2019716a15159f85079d1174cc84e8407:/lib/mount/command_test.go diff --git a/lib/mount/command_test.go b/lib/mount/command_test.go index 9cd413979f..44eb61e7f9 100644 --- a/lib/mount/command_test.go +++ b/lib/mount/command_test.go @@ -6,10 +6,12 @@ package mount import ( "bytes" + "encoding/json" "io/ioutil" "os" "time" + "git.arvados.org/arvados.git/sdk/go/arvadostest" check "gopkg.in/check.v1" ) @@ -34,7 +36,7 @@ func (s *CmdSuite) TestMount(c *check.C) { stdin := bytes.NewBufferString("stdin") stdout := bytes.NewBuffer(nil) stderr := bytes.NewBuffer(nil) - mountCmd := cmd{ready: make(chan struct{})} + mountCmd := mountCommand{ready: make(chan struct{})} ready := false go func() { exited <- mountCmd.RunCommand("test mount", []string{"--experimental", s.mnt}, stdin, stdout, stderr) @@ -42,6 +44,26 @@ func (s *CmdSuite) TestMount(c *check.C) { go func() { <-mountCmd.ready ready = true + + f, err := os.Open(s.mnt + "/by_id/" + arvadostest.FooCollection) + if c.Check(err, check.IsNil) { + dirnames, err := f.Readdirnames(-1) + c.Check(err, check.IsNil) + c.Check(dirnames, check.DeepEquals, []string{"foo"}) + f.Close() + } + + buf, err := ioutil.ReadFile(s.mnt + "/by_id/" + arvadostest.FooCollection + "/.arvados#collection") + if c.Check(err, check.IsNil) { + var m map[string]interface{} + err = json.Unmarshal(buf, &m) + c.Check(err, check.IsNil) + c.Check(m["manifest_text"], check.Matches, `\. acbd.* 0:3:foo\n`) + } + + _, err = os.Open(s.mnt + "/by_id/zzzzz-4zz18-does-not-exist") + c.Check(os.IsNotExist(err), check.Equals, true) + ok := mountCmd.Unmount() c.Check(ok, check.Equals, true) }()