}

				state.InstanceReturns(&instance, nil)

				provisioningContext.ServiceId = "service-2"
				provisioningContext.PlanId = "plan-2"
				err := provisioningController.Update(provisioningContext)
				Expect(err).ToNot(HaveOccurred())
			})

			It("responds with 200", func() {
				Expect(goaContext.ResponseStatus()).To(Equal(200))
			})

			It("sends the correct message to the state", func() {
				recordedInstance := state.UpdateInstanceArgsForCall(0)
				Expect(recordedInstance.ID).To(Equal("some-instance-id"))
				Expect(recordedInstance.OrganizationID).To(Equal("org-1"))
				Expect(recordedInstance.SpaceID).To(Equal("space-1"))
				Expect(recordedInstance.ServiceID).To(Equal("service-2"))
				Expect(recordedInstance.PlanID).To(Equal("plan-2"))
			})
		})

		Context("when the instance doesn't exist", func() {
			BeforeEach(func() {
				state.InstanceReturns(nil, errors.New("Not here!"))
				err := provisioningController.Update(provisioningContext)
				Expect(err).ToNot(HaveOccurred())
			})