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  })