package test import ( "io" "net/http" "net/http/httptest" "one-api/model" "github.com/gin-gonic/gin" ) func RequestJSONConfig() map[string]string { return map[string]string{ "Content-Type": "application/json", "Accept": "application/json", } } func GetContext(method, path string, headers map[string]string, body io.Reader) (*gin.Context, *httptest.ResponseRecorder) { var req *http.Request req, _ = http.NewRequest(method, path, body) for k, v := range headers { req.Header.Set(k, v) } w := httptest.NewRecorder() c, _ := gin.CreateTestContext(w) c.Request = req return c, w } func GetGinRouter(method, path string, headers map[string]string, body *io.Reader) *httptest.ResponseRecorder { var req *http.Request r := gin.Default() w := httptest.NewRecorder() req, _ = http.NewRequest(method, path, *body) for k, v := range headers { req.Header.Set(k, v) } r.ServeHTTP(w, req) return w } func GetChannel(channelType int, baseUrl, other, porxy, modelMapping string) model.Channel { return model.Channel{ Type: channelType, BaseURL: &baseUrl, Other: other, Proxy: &porxy, ModelMapping: &modelMapping, Key: GetTestToken(), } }