// NewPetstore creates a new petstore api handler func NewPetstore() (http.Handler, error) { spec, err := spec.New(json.RawMessage([]byte(swaggerJSON)), "") if err != nil { return nil, err } api := untyped.NewAPI(spec) api.RegisterOperation("getAllPets", getAllPets) api.RegisterOperation("createPet", createPet) api.RegisterOperation("deletePet", deletePet) api.RegisterOperation("getPetById", getPetByID) return middleware.Serve(spec, api), nil }
func TestContentType_Issue264(t *testing.T) { swspec, err := spec.Load("../../fixtures/bugs/264/swagger.yml") if assert.NoError(t, err) { api := untyped.NewAPI(swspec) api.RegisterConsumer("application/json", httpkit.JSONConsumer()) api.RegisterProducer("application/json", httpkit.JSONProducer()) api.RegisterOperation("delete", "/key/{id}", new(stubOperationHandler)) handler := Serve(swspec, api) request, _ := http.NewRequest("DELETE", "/key/1", nil) recorder := httptest.NewRecorder() handler.ServeHTTP(recorder, request) assert.Equal(t, 200, recorder.Code) } }