func main() { r := gin.Default() api := api2go.NewAPIWithRouting( "v0", api2go.NewStaticResolver("/"), gingonic.New(r), ) db, err := storage.InitDB() if err != nil { panic(err) } defer db.Close() userStorage := storage.NewUserStorage(db) chocStorage := storage.NewChocolateStorage(db) api.AddResource(model.User{}, resource.UserResource{ChocStorage: chocStorage, UserStorage: userStorage}) api.AddResource(model.Chocolate{}, resource.ChocolateResource{ChocStorage: chocStorage, UserStorage: userStorage}) r.GET("/ping", func(c *gin.Context) { c.String(200, "pong") }) r.Run(":31415") // listen and serve on 0.0.0.0:31415 }
) var _ = Describe("api2go with gorillamux router adapter", func() { var ( router routing.Routeable r *mux.Router api *api2go.API rec *httptest.ResponseRecorder ) BeforeSuite(func() { r = mux.NewRouter() router = New(r) api = api2go.NewAPIWithRouting( "api", api2go.NewStaticResolver("/"), api2go.DefaultContentMarshalers, router, ) userStorage := storage.NewUserStorage() chocStorage := storage.NewChocolateStorage() api.AddResource(model.User{}, resource.UserResource{ChocStorage: chocStorage, UserStorage: userStorage}) api.AddResource(model.Chocolate{}, resource.ChocolateResource{ChocStorage: chocStorage, UserStorage: userStorage}) }) BeforeEach(func() { log.SetOutput(ioutil.Discard) rec = httptest.NewRecorder() })