func (b *Binding) Update(ctx *app.UpdateBindingContext) error { if !b.state.InstanceExists(ctx.InstanceId) { return ctx.NotFound() } if b.state.InstanceBindingExists(ctx.InstanceId, ctx.BindingId) { return ctx.Conflict() } err := b.state.AddInstanceBinding(ctx.InstanceId, ctx.BindingId) if err != nil { return ctx.InternalServerError() } return ctx.Created() }
var goaContext *goa.Context var responseWriter *httptest.ResponseRecorder BeforeEach(func() { state = new(fakes.FakeState) gctx := context.Background() req := http.Request{} responseWriter = httptest.NewRecorder() params := url.Values{} payload := map[string]string{} goaContext = goa.NewContext(gctx, &req, responseWriter, params, payload) }) Describe("#Update", func() { var bindingContext *app.UpdateBindingContext BeforeEach(func() { var err error bindingContext, err = app.NewUpdateBindingContext(goaContext) Expect(err).ToNot(HaveOccurred()) bindingContext.InstanceId = "instance-1" bindingContext.BindingId = "binding-1" bindingContext.AppGuid = "app-guid" }) JustBeforeEach(func() { bindingController = controllers.NewBinding(state) err := bindingController.Update(bindingContext) Expect(err).ToNot(HaveOccurred())