Expect(func() { cmd.Requirements(requirementsFactory, flagContext) }).To(Panic()) Expect(ui.Outputs).To(ContainSubstrings( []string{"FAILED"}, []string{"Incorrect Usage. Requires an argument"}, )) }) }) Context("when provided exactly one arg", func() { BeforeEach(func() { flagContext.Parse("quota") }) It("returns a LoginRequirement", func() { actualRequirements := cmd.Requirements(requirementsFactory, flagContext) Expect(requirementsFactory.NewLoginRequirementCallCount()).To(Equal(1)) Expect(actualRequirements).To(ContainElement(loginRequirement)) }) It("does not return a MinAPIVersionRequirement", func() { actualRequirements := cmd.Requirements(requirementsFactory, flagContext) Expect(requirementsFactory.NewMinAPIVersionRequirementCallCount()).To(Equal(0)) Expect(actualRequirements).NotTo(ContainElement(minAPIVersionRequirement)) }) Context("when an app instance limit is passed", func() { BeforeEach(func() { flagContext = flags.NewFlagContext(cmd.MetaData().Flags) flagContext.Parse("domain-name", "-a", "2") })