callSetEnv(args, reqFactory, appRepo) Expect(testcmd.CommandDidPassRequirements).To(BeFalse()) testcmd.CommandDidPassRequirements = true reqFactory = &testreq.FakeReqFactory{Application: app, LoginSuccess: true, TargetedSpaceSuccess: false} callSetEnv(args, reqFactory, appRepo) Expect(testcmd.CommandDidPassRequirements).To(BeFalse()) }) It("TestRunWhenApplicationExists", func() { app := models.Application{} app.Name = "my-app" app.Guid = "my-app-guid" app.EnvironmentVars = map[string]string{"foo": "bar"} reqFactory := &testreq.FakeReqFactory{Application: app, LoginSuccess: true, TargetedSpaceSuccess: true} appRepo := &testapi.FakeApplicationRepository{} args := []string{"my-app", "DATABASE_URL", "mysql://example.com/my-db"} ui := callSetEnv(args, reqFactory, appRepo) Expect(len(ui.Outputs)).To(Equal(3)) testassert.SliceContains(ui.Outputs, testassert.Lines{ { "Setting env variable", "DATABASE_URL", "mysql://example.com/my-db", "my-app", "my-org", "my-space",
Expect(len(appRepo.CreateAppParams)).To(Equal(0)) }) }) }) Describe("re-pushing an existing app", func() { var existingApp models.Application BeforeEach(func() { existingApp = models.Application{} existingApp.Name = "existing-app" existingApp.Guid = "existing-app-guid" existingApp.Command = "unicorn -c config/unicorn.rb -D" existingApp.EnvironmentVars = map[string]string{ "crazy": "pants", "FOO": "NotYoBaz", "foo": "manchu", } appRepo.ReadReturns.App = existingApp appRepo.UpdateAppResult = existingApp }) It("resets the app's buildpack when the -b flag is provided as 'default'", func() { callPush("-b", "default", "existing-app") Expect(*appRepo.UpdateParams.BuildpackUrl).To(Equal("")) }) It("resets the app's command when the -c flag is provided as 'default'", func() { callPush("-c", "default", "existing-app") Expect(*appRepo.UpdateParams.Command).To(Equal(""))