Merge branch '13647-keepstore-config'
[arvados.git] / services / crunch-run / copier_test.go
index d678cf6eedca529325e56a509b24544abbfe442b..c0fe38008d9a419f1ccfd17e10bde60803cfa29f 100644 (file)
@@ -111,7 +111,7 @@ func (s *copierSuite) TestSymlinkToMountedCollection(c *check.C) {
        // simulate mounted read-only collection
        s.cp.mounts["/mnt"] = arvados.Mount{
                Kind:             "collection",
-               PortableDataHash: arvadostest.FooPdh,
+               PortableDataHash: arvadostest.FooCollectionPDH,
        }
 
        // simulate mounted writable collection
@@ -125,7 +125,7 @@ func (s *copierSuite) TestSymlinkToMountedCollection(c *check.C) {
        c.Assert(f.Close(), check.IsNil)
        s.cp.mounts["/mnt-w"] = arvados.Mount{
                Kind:             "collection",
-               PortableDataHash: arvadostest.FooPdh,
+               PortableDataHash: arvadostest.FooCollectionPDH,
                Writable:         true,
        }
        s.cp.binds = append(s.cp.binds, bindtmp+":/mnt-w")
@@ -153,6 +153,8 @@ func (s *copierSuite) TestSymlink(c *check.C) {
                os.MkdirAll(s.cp.hostOutputDir+"/morelinks", 0755),
                os.Symlink("../dir1/dir2", s.cp.hostOutputDir+"/morelinks/l_rel_dir2"),
                os.Symlink("dir1/dir2/dir3", s.cp.hostOutputDir+"/l_rel_dir3"),
+               // rel. symlink -> rel. symlink -> regular file
+               os.Symlink("../dir1/dir2/l_rel_file", s.cp.hostOutputDir+"/morelinks/l_rel_l_rel_file"),
        } {
                c.Assert(err, check.IsNil)
        }
@@ -176,6 +178,7 @@ func (s *copierSuite) TestSymlink(c *check.C) {
                {dst: "/l_rel_file", src: hostfile, size: 4},
                {dst: "/morelinks/l_rel_dir2/dir3/.keep", src: os.DevNull},
                {dst: "/morelinks/l_rel_dir2/l_rel_file", src: hostfile, size: 4},
+               {dst: "/morelinks/l_rel_l_rel_file", src: hostfile, size: 4},
        })
 }
 
@@ -194,7 +197,7 @@ func (s *copierSuite) TestUnsupportedMountKindBelow(c *check.C) {
 func (s *copierSuite) TestWritableMountBelow(c *check.C) {
        s.cp.mounts["/ctr/outdir/mount"] = arvados.Mount{
                Kind:             "collection",
-               PortableDataHash: arvadostest.FooPdh,
+               PortableDataHash: arvadostest.FooCollectionPDH,
                Writable:         true,
        }
        c.Assert(os.MkdirAll(s.cp.hostOutputDir+"/mount", 0755), check.IsNil)