JustBeforeEach(func() {
			bindingController = controllers.NewBinding(state)
			err := bindingController.Update(bindingContext)
			Expect(err).ToNot(HaveOccurred())
		})

		Context("when all goes ok", func() {

			BeforeEach(func() {
				instance := repository.Instance{
					ID: "instance-1",
				}

				state.InstanceExistsReturns(true)
				state.InstanceBindingExistsReturns(false)
				state.InstanceReturns(&instance, nil)
			})

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

			It("updates the state", func() {
				instanceID, bindingID := state.AddInstanceBindingArgsForCall(0)
				Expect(instanceID).To(Equal("instance-1"))
				Expect(bindingID).To(Equal("binding-1"))
			})
		})

		Context("when the instance doesn't exist", func() {