Skip to content

Commit

Permalink
Added unit test
Browse files Browse the repository at this point in the history
Signed-off-by: Colin Casey <[email protected]>
  • Loading branch information
colincasey committed Jul 27, 2023
1 parent 2c9fe59 commit b6440b8
Showing 1 changed file with 72 additions and 0 deletions.
72 changes: 72 additions & 0 deletions pkg/client/build_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ import (
"io"
"net/http"
"os"
"path"
"path/filepath"
"runtime"
"strings"
Expand Down Expand Up @@ -988,6 +989,77 @@ func testBuild(t *testing.T, when spec.G, it spec.S) {
})
})

when("meta-buildpack folder is used", func() {
it.Focus("resolves buildpack", func() {
metaBuildpackFolder := path.Join(tmpDir, "meta-buildpack")
err := os.Mkdir(metaBuildpackFolder, os.ModePerm)
h.AssertNil(t, err)

err = os.WriteFile(path.Join(metaBuildpackFolder, "buildpack.toml"), []byte(`
api = "0.2"
[buildpack]
id = "local/meta-bp"
version = "local-meta-bp-version"
name = "Local Meta-Buildpack"
[[order]]
[[order.group]]
id = "local/meta-bp-dep"
version = "local-meta-bp-version"
`), 0644)
h.AssertNil(t, err)

err = os.WriteFile(path.Join(metaBuildpackFolder, "package.toml"), []byte(`
[buildpack]
uri = "."
[[dependencies]]
uri = "../meta-buildpack-dependency"
`), 0644)
h.AssertNil(t, err)

metaBuildpackDependencyFolder := path.Join(tmpDir, "meta-buildpack-dependency")
err = os.Mkdir(metaBuildpackDependencyFolder, os.ModePerm)
h.AssertNil(t, err)

err = os.WriteFile(path.Join(metaBuildpackDependencyFolder, "buildpack.toml"), []byte(`
api = "0.2"
[buildpack]
id = "local/meta-bp-dep"
version = "local-meta-bp-version"
name = "Local Meta-Buildpack Dependency"
[[stacks]]
id = "*"
`), 0644)
h.AssertNil(t, err)

err = subject.Build(context.TODO(), BuildOptions{
Image: "some/app",
Builder: defaultBuilderName,
ClearCache: true,
Buildpacks: []string{metaBuildpackFolder},
})

h.AssertNil(t, err)
h.AssertEq(t, fakeLifecycle.Opts.Builder.Name(), defaultBuilderImage.Name())
bldr, err := builder.FromImage(defaultBuilderImage)

Check failure on line 1048 in pkg/client/build_test.go

View workflow job for this annotation

GitHub Actions / test (macos)

ineffectual assignment to err (ineffassign)

Check failure on line 1048 in pkg/client/build_test.go

View workflow job for this annotation

GitHub Actions / test (linux)

ineffectual assignment to err (ineffassign)

Check failure on line 1048 in pkg/client/build_test.go

View workflow job for this annotation

GitHub Actions / test (windows-lcow)

ineffectual assignment to err (ineffassign)

Check failure on line 1048 in pkg/client/build_test.go

View workflow job for this annotation

GitHub Actions / test (windows-wcow)

ineffectual assignment to err (ineffassign)

buildpack1Info := dist.ModuleInfo{ID: "buildpack.1.id", Version: "buildpack.1.version"}
buildpack2Info := dist.ModuleInfo{ID: "buildpack.2.id", Version: "buildpack.2.version"}
metaBuildpackInfo := dist.ModuleInfo{ID: "local/meta-bp", Version: "local-meta-bp-version", Name: "Local Meta-Buildpack"}
metaBuildpackDependencyInfo := dist.ModuleInfo{ID: "local/meta-bp-dep", Version: "local-meta-bp-version", Name: "Local Meta-Buildpack Dependency"}
h.AssertEq(t, bldr.Buildpacks(), []dist.ModuleInfo{
buildpack1Info,
buildpack2Info,
metaBuildpackInfo,
metaBuildpackDependencyInfo,
})
})
})

when("buildpackage image is used", func() {
var fakePackage *fakes.Image

Expand Down

0 comments on commit b6440b8

Please sign in to comment.