spaceRequirement = &fakerequirements.FakeSpaceRequirement{} space := models.Space{} space.Guid = "space-guid" space.Name = "space-name" spaceRequirement.GetSpaceReturns(space) factory.NewSpaceRequirementReturns(spaceRequirement) domainRequirement = &fakerequirements.FakeDomainRequirement{} domainRequirement.GetDomainReturns(models.DomainFields{ Guid: "domain-guid", Name: "domain-name", }) factory.NewDomainRequirementReturns(domainRequirement) minAPIVersionRequirement = &passingRequirement{} factory.NewMinAPIVersionRequirementReturns(minAPIVersionRequirement) }) Describe("Requirements", func() { Context("when not provided exactly two args", func() { BeforeEach(func() { flagContext.Parse("space-name") }) It("fails with usage", func() { Expect(func() { cmd.Requirements(factory, flagContext) }).To(Panic()) Expect(ui.Outputs).To(ContainSubstrings( []string{"Incorrect Usage. Requires SPACE and DOMAIN as arguments"}, []string{"NAME"}, []string{"USAGE"}, ))