req requirements.DEAApplicationRequirement ui *testterm.FakeUI appRepo *testApplication.FakeApplicationRepository appName string ) BeforeEach(func() { appName = "fake-app-name" ui = &testterm.FakeUI{} appRepo = &testApplication.FakeApplicationRepository{} req = requirements.NewDEAApplicationRequirement(appName, ui, appRepo) }) Describe("GetApplication", func() { It("returns an empty application", func() { Expect(req.GetApplication()).To(Equal(models.Application{})) }) Context("when the requirement has been executed", func() { BeforeEach(func() { app := models.Application{} app.Guid = "fake-app-guid" appRepo.ReadReturns(app, nil) req.Execute() }) It("returns the application", func() { Expect(req.GetApplication().Guid).To(Equal("fake-app-guid")) }) })