github.com/franc20/ayesa_sap@v7.0.0-beta.28.0.20200124003224-302d4d52fa6c+incompatible/command/v7/unset_label_command_test.go (about) 1 package v7_test 2 3 import ( 4 "code.cloudfoundry.org/cli/command/flag" 5 v7 "code.cloudfoundry.org/cli/command/v7" 6 "code.cloudfoundry.org/cli/command/v7/v7fakes" 7 "code.cloudfoundry.org/cli/types" 8 . "github.com/onsi/ginkgo" 9 . "github.com/onsi/gomega" 10 ) 11 12 var _ = Describe("unset-label command", func() { 13 var ( 14 cmd v7.UnsetLabelCommand 15 resourceName string 16 fakeLabelSetter *v7fakes.FakeLabelUnsetter 17 18 executeErr error 19 ) 20 21 Context("shared validations", func() { 22 BeforeEach(func() { 23 fakeLabelSetter = new(v7fakes.FakeLabelUnsetter) 24 cmd = v7.UnsetLabelCommand{ 25 LabelUnsetter: fakeLabelSetter, 26 } 27 }) 28 29 When("all the provided labels are valid", func() { 30 BeforeEach(func() { 31 cmd.RequiredArgs = flag.UnsetLabelArgs{ 32 ResourceType: "anything", 33 ResourceName: resourceName, 34 LabelKeys: []string{"FOO", "ENV"}, 35 } 36 cmd.BuildpackStack = "some-stack" 37 38 }) 39 40 It("calls execute with the right parameters", func() { 41 executeErr = cmd.Execute(nil) 42 43 Expect(executeErr).ToNot(HaveOccurred()) 44 Expect(fakeLabelSetter.ExecuteCallCount()).To(Equal(1)) 45 targetResource, keys := fakeLabelSetter.ExecuteArgsForCall(0) 46 Expect(targetResource.ResourceType).To(Equal(cmd.RequiredArgs.ResourceType)) 47 Expect(targetResource.ResourceName).To(Equal(cmd.RequiredArgs.ResourceName)) 48 Expect(targetResource.BuildpackStack).To(Equal(cmd.BuildpackStack)) 49 Expect(keys).To(Equal(map[string]types.NullString{ 50 "FOO": types.NewNullString(), 51 "ENV": types.NewNullString(), 52 })) 53 }) 54 }) 55 56 }) 57 })