repo.CreateRestageRequest("some-cool-app-guid") Expect(handler).To(HaveAllRequestsCalled()) }) }) Describe("updating applications", func() { It("makes the right request", func() { ts, handler, repo := createAppRepo([]testnet.TestRequest{updateApplicationRequest}) defer ts.Close() app := models.Application{} app.Guid = "my-app-guid" app.Name = "my-cool-app" app.BuildpackUrl = "buildpack-url" app.Command = "some-command" app.Memory = 2048 app.InstanceCount = 3 app.Stack = &models.Stack{Guid: "some-stack-guid"} app.SpaceGuid = "some-space-guid" app.State = "started" app.DiskQuota = 512 Expect(app.EnvironmentVars).To(BeNil()) updatedApp, apiErr := repo.Update(app.Guid, app.ToParams()) Expect(handler).To(HaveAllRequestsCalled()) Expect(apiErr).NotTo(HaveOccurred()) Expect(updatedApp.Name).To(Equal("my-cool-app")) Expect(updatedApp.Guid).To(Equal("my-cool-app-guid")) })
Expect(ui.Outputs).To(ContainSubstrings([]string{"FAILED"})) 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("")) })