It("TestUpdateApplication", 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.Guid = "some-stack-guid" app.SpaceGuid = "some-space-guid" app.State = "started" updatedApp, apiResponse := repo.Update(app.Guid, app.ToParams()) Expect(handler.AllRequestsCalled()).To(BeTrue()) Expect(apiResponse.IsSuccessful()).To(BeTrue()) Expect(updatedApp.Name).To(Equal("my-cool-app")) Expect(updatedApp.Guid).To(Equal("my-cool-app-guid")) }) It("TestUpdateApplicationSetCommandToNull", func() { request := testapi.NewCloudControllerTestRequest(testnet.TestRequest{ Method: "PUT", Path: "/v2/apps/my-app-guid", Matcher: testnet.RequestBodyMatcher(`{"command":""}`), Response: testnet.TestResponse{Status: http.StatusOK, Body: updateApplicationResponse}, })
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(testnet.HaveAllRequestsCalled()) Expect(apiErr).NotTo(HaveOccurred()) Expect(updatedApp.Name).To(Equal("my-cool-app")) Expect(updatedApp.Guid).To(Equal("my-cool-app-guid")) }) It("sets environment variables", func() { request := testapi.NewCloudControllerTestRequest(testnet.TestRequest{ Method: "PUT", Path: "/v2/apps/app1-guid", Matcher: testnet.RequestBodyMatcher(`{"environment_json":{"DATABASE_URL":"mysql://example.com/my-db"}}`), Response: testnet.TestResponse{Status: http.StatusCreated}, })