Config: configRepo, RepoLocator: repoLocator, } requirementsFactory = new(requirementsfakes.FakeFactory) cmd = "a.CreateQuota{} cmd.SetDependency(deps, false) flagContext = flags.NewFlagContext(cmd.MetaData().Flags) loginRequirement = &passingRequirement{Name: "login-requirement"} requirementsFactory.NewLoginRequirementReturns(loginRequirement) minAPIVersionRequirement = &passingRequirement{Name: "min-api-version-requirement"} requirementsFactory.NewMinAPIVersionRequirementReturns(minAPIVersionRequirement) }) Context("when not provided exactly one arg", func() { BeforeEach(func() { flagContext.Parse("quota", "extra-arg") }) It("fails with usage", func() { Expect(func() { cmd.Requirements(requirementsFactory, flagContext) }).To(Panic()) Expect(ui.Outputs).To(ContainSubstrings( []string{"FAILED"}, []string{"Incorrect Usage. Requires an argument"}, )) }) })