Index: go/src/infra/tools/cipd/local/deployer_test.go |
diff --git a/go/src/infra/tools/cipd/deployer_test.go b/go/src/infra/tools/cipd/local/deployer_test.go |
similarity index 85% |
rename from go/src/infra/tools/cipd/deployer_test.go |
rename to go/src/infra/tools/cipd/local/deployer_test.go |
index b6b171f25b677b82a4e6d6ddf9fe1e0877701c09..9e85bd761a0502a15966eba3b2e8c0d4954e5467 100644 |
--- a/go/src/infra/tools/cipd/deployer_test.go |
+++ b/go/src/infra/tools/cipd/local/deployer_test.go |
@@ -2,7 +2,7 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-package cipd |
+package local |
import ( |
"bytes" |
@@ -15,6 +15,8 @@ import ( |
"testing" |
. "github.com/smartystreets/goconvey/convey" |
+ |
+ . "infra/tools/cipd/common" |
) |
func TestUtilities(t *testing.T) { |
@@ -133,10 +135,7 @@ func TestDeployInstance(t *testing.T) { |
inst := makeTestInstance("test/package", nil) |
info, err := DeployInstance(tempDir, inst) |
So(err, ShouldBeNil) |
- So(info, ShouldResemble, PackageState{ |
- PackageName: "test/package", |
- InstanceID: inst.InstanceID(), |
- }) |
+ So(info, ShouldResemble, inst.Pin()) |
So(scanDir(tempDir), ShouldResemble, []string{ |
".cipd/pkgs/test_package_B6R4ErK5ko/0123456789abcdef00000123456789abcdef0000/.cipdpkg/manifest.json", |
".cipd/pkgs/test_package_B6R4ErK5ko/_current:0123456789abcdef00000123456789abcdef0000", |
@@ -145,9 +144,9 @@ func TestDeployInstance(t *testing.T) { |
Convey("DeployInstance new non-empty package instance", func() { |
inst := makeTestInstance("test/package", []File{ |
- makeTestFile("some/file/path", "data a", false), |
- makeTestFile("some/executable", "data b", true), |
- makeTestSymlink("some/symlink", "executable"), |
+ NewTestFile("some/file/path", "data a", false), |
+ NewTestFile("some/executable", "data b", true), |
+ NewTestSymlink("some/symlink", "executable"), |
}) |
_, err := DeployInstance(tempDir, inst) |
So(err, ShouldBeNil) |
@@ -173,9 +172,9 @@ func TestDeployInstance(t *testing.T) { |
Convey("Redeploy same package instance", func() { |
inst := makeTestInstance("test/package", []File{ |
- makeTestFile("some/file/path", "data a", false), |
- makeTestFile("some/executable", "data b", true), |
- makeTestSymlink("some/symlink", "executable"), |
+ NewTestFile("some/file/path", "data a", false), |
+ NewTestFile("some/executable", "data b", true), |
+ NewTestSymlink("some/symlink", "executable"), |
}) |
_, err := DeployInstance(tempDir, inst) |
So(err, ShouldBeNil) |
@@ -195,24 +194,24 @@ func TestDeployInstance(t *testing.T) { |
Convey("DeployInstance package update", func() { |
oldPkg := makeTestInstance("test/package", []File{ |
- makeTestFile("some/file/path", "data a old", false), |
- makeTestFile("some/executable", "data b old", true), |
- makeTestFile("old only", "data c old", true), |
- makeTestFile("mode change 1", "data d", true), |
- makeTestFile("mode change 2", "data e", false), |
- makeTestSymlink("symlink unchanged", "target"), |
- makeTestSymlink("symlink changed", "old target"), |
- makeTestSymlink("symlink removed", "target"), |
+ NewTestFile("some/file/path", "data a old", false), |
+ NewTestFile("some/executable", "data b old", true), |
+ NewTestFile("old only", "data c old", true), |
+ NewTestFile("mode change 1", "data d", true), |
+ NewTestFile("mode change 2", "data e", false), |
+ NewTestSymlink("symlink unchanged", "target"), |
+ NewTestSymlink("symlink changed", "old target"), |
+ NewTestSymlink("symlink removed", "target"), |
}) |
oldPkg.instanceID = "0000000000000000000000000000000000000000" |
newPkg := makeTestInstance("test/package", []File{ |
- makeTestFile("some/file/path", "data a new", false), |
- makeTestFile("some/executable", "data b new", true), |
- makeTestFile("mode change 1", "data d", false), |
- makeTestFile("mode change 2", "data d", true), |
- makeTestSymlink("symlink unchanged", "target"), |
- makeTestSymlink("symlink changed", "new target"), |
+ NewTestFile("some/file/path", "data a new", false), |
+ NewTestFile("some/executable", "data b new", true), |
+ NewTestFile("mode change 1", "data d", false), |
+ NewTestFile("mode change 2", "data d", true), |
+ NewTestSymlink("symlink unchanged", "target"), |
+ NewTestSymlink("symlink changed", "new target"), |
}) |
newPkg.instanceID = "1111111111111111111111111111111111111111" |
@@ -241,17 +240,17 @@ func TestDeployInstance(t *testing.T) { |
Convey("DeployInstance two different packages", func() { |
pkg1 := makeTestInstance("test/package", []File{ |
- makeTestFile("some/file/path", "data a old", false), |
- makeTestFile("some/executable", "data b old", true), |
- makeTestFile("pkg1 file", "data c", false), |
+ NewTestFile("some/file/path", "data a old", false), |
+ NewTestFile("some/executable", "data b old", true), |
+ NewTestFile("pkg1 file", "data c", false), |
}) |
pkg1.instanceID = "0000000000000000000000000000000000000000" |
// Nesting in package names is allowed. |
pkg2 := makeTestInstance("test/package/another", []File{ |
- makeTestFile("some/file/path", "data a new", false), |
- makeTestFile("some/executable", "data b new", true), |
- makeTestFile("pkg2 file", "data d", false), |
+ NewTestFile("some/file/path", "data a new", false), |
+ NewTestFile("some/executable", "data b new", true), |
+ NewTestFile("pkg2 file", "data d", false), |
}) |
pkg2.instanceID = "1111111111111111111111111111111111111111" |
@@ -320,23 +319,11 @@ func TestFindDeployed(t *testing.T) { |
// Verify it is discoverable. |
out, err := FindDeployed(tempDir) |
So(err, ShouldBeNil) |
- So(out, ShouldResemble, []PackageState{ |
- PackageState{ |
- PackageName: "test", |
- InstanceID: "0123456789abcdef00000123456789abcdef0000", |
- }, |
- PackageState{ |
- PackageName: "test/pkg", |
- InstanceID: "0123456789abcdef00000123456789abcdef0000", |
- }, |
- PackageState{ |
- PackageName: "test/pkg/123", |
- InstanceID: "0123456789abcdef00000123456789abcdef0000", |
- }, |
- PackageState{ |
- PackageName: "test/pkg/456", |
- InstanceID: "0123456789abcdef00000123456789abcdef0000", |
- }, |
+ So(out, ShouldResemble, []Pin{ |
+ {"test", "0123456789abcdef00000123456789abcdef0000"}, |
+ {"test/pkg", "0123456789abcdef00000123456789abcdef0000"}, |
+ {"test/pkg/123", "0123456789abcdef00000123456789abcdef0000"}, |
+ {"test/pkg/456", "0123456789abcdef00000123456789abcdef0000"}, |
}) |
}) |
}) |
@@ -356,17 +343,17 @@ func TestRemoveDeployed(t *testing.T) { |
Convey("RemoveDeployed works", func() { |
// Deploy some instance (to keep it). |
inst := makeTestInstance("test/package/123", []File{ |
- makeTestFile("some/file/path1", "data a", false), |
- makeTestFile("some/executable1", "data b", true), |
+ NewTestFile("some/file/path1", "data a", false), |
+ NewTestFile("some/executable1", "data b", true), |
}) |
_, err := DeployInstance(tempDir, inst) |
So(err, ShouldBeNil) |
// Deploy another instance (to remove it). |
inst = makeTestInstance("test/package", []File{ |
- makeTestFile("some/file/path2", "data a", false), |
- makeTestFile("some/executable2", "data b", true), |
- makeTestSymlink("some/symlink", "executable"), |
+ NewTestFile("some/file/path2", "data a", false), |
+ NewTestFile("some/executable2", "data b", true), |
+ NewTestSymlink("some/symlink", "executable"), |
}) |
_, err = DeployInstance(tempDir, inst) |
So(err, ShouldBeNil) |
@@ -407,7 +394,7 @@ func makeTestInstance(name string, files []File) *testPackageInstance { |
if err != nil { |
panic("Failed to write a manifest") |
} |
- files = append(files, makeTestFile(manifestName, string(out.Bytes()), false)) |
+ files = append(files, NewTestFile(manifestName, string(out.Bytes()), false)) |
return &testPackageInstance{ |
packageName: name, |
instanceID: "0123456789abcdef00000123456789abcdef0000", |
@@ -416,8 +403,7 @@ func makeTestInstance(name string, files []File) *testPackageInstance { |
} |
func (f *testPackageInstance) Close() error { return nil } |
-func (f *testPackageInstance) PackageName() string { return f.packageName } |
-func (f *testPackageInstance) InstanceID() string { return f.instanceID } |
+func (f *testPackageInstance) Pin() Pin { return Pin{f.packageName, f.instanceID} } |
func (f *testPackageInstance) Files() []File { return f.files } |
func (f *testPackageInstance) DataReader() io.ReadSeeker { panic("Not implemented") } |