}) 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") }) It("returns a MinAPIVersionRequirement as the second requirement", func() { actualRequirements := cmd.Requirements(requirementsFactory, flagContext) expectedVersion, err := semver.Make("2.33.0") Expect(err).NotTo(HaveOccurred())