Context("when provided exactly two args", func() { BeforeEach(func() { flagContext.Parse("domain-name", "host-name") }) It("returns a LoginRequirement", func() { actualRequirements, err := cmd.Requirements(factory, flagContext) Expect(err).NotTo(HaveOccurred()) Expect(factory.NewLoginRequirementCallCount()).To(Equal(1)) Expect(actualRequirements).To(ContainElement(loginRequirement)) }) It("returns a TargetedOrgRequirement", func() { actualRequirements, err := cmd.Requirements(factory, flagContext) Expect(err).NotTo(HaveOccurred()) Expect(factory.NewTargetedOrgRequirementCallCount()).To(Equal(1)) Expect(actualRequirements).To(ContainElement(targetedOrgRequirement)) }) Context("when a path is passed", func() { BeforeEach(func() { flagContext.Parse("domain-name", "hostname", "--path", "the-path") }) It("returns a MinAPIVersionRequirement as the first requirement", func() { actualRequirements, err := cmd.Requirements(factory, flagContext) Expect(err).NotTo(HaveOccurred()) expectedVersion, err := semver.Make("2.36.0") Expect(err).NotTo(HaveOccurred())