github.com/sleungcy/cli@v7.1.0+incompatible/actor/v7pushaction/application_test.go (about) 1 package v7pushaction_test 2 3 import ( 4 "code.cloudfoundry.org/cli/actor/v2action" 5 . "code.cloudfoundry.org/cli/actor/v7pushaction" 6 "code.cloudfoundry.org/cli/types" 7 8 . "github.com/onsi/ginkgo" 9 . "github.com/onsi/ginkgo/extensions/table" 10 . "github.com/onsi/gomega" 11 ) 12 13 var _ = Describe("Applications", func() { 14 Describe("Application", func() { 15 DescribeTable("CalculatedBuildpacks", 16 func(v2Buildpack string, v3Buildpacks []string, expected []string) { 17 var buildpack types.FilteredString 18 if len(v2Buildpack) > 0 { 19 buildpack = types.FilteredString{ 20 Value: v2Buildpack, 21 IsSet: true, 22 } 23 } 24 Expect(Application{ 25 Application: v2action.Application{ 26 Buildpack: buildpack, 27 }, 28 Buildpacks: v3Buildpacks, 29 }.CalculatedBuildpacks()).To(Equal(expected)) 30 }, 31 32 Entry("returns buildpacks when it contains values", 33 "some-buildpack", []string{"some-buildpack", "some-other-buildpack"}, 34 []string{"some-buildpack", "some-other-buildpack"}), 35 36 Entry("always returns buildpacks when it is set", 37 "some-buildpack", []string{}, 38 []string{}), 39 40 Entry("returns v2 buildpack when buildpacks is not set", 41 "some-buildpack", nil, 42 []string{"some-buildpack"}), 43 44 Entry("returns empty when nothing is set", "", nil, nil), 45 ) 46 }) 47 })