mirror of
https://github.com/labstack/echo.git
synced 2025-04-11 11:42:01 +02:00
Set maxParam with SetParamNames (#1535)
* Set maxParam with SetParamNames Fixes #1492 * Revert go.mod
This commit is contained in:
parent
542835808e
commit
269dfcc9dd
@ -332,7 +332,6 @@ func TestBindbindData(t *testing.T) {
|
||||
|
||||
func TestBindParam(t *testing.T) {
|
||||
e := New()
|
||||
*e.maxParam = 2
|
||||
req := httptest.NewRequest(GET, "/", nil)
|
||||
rec := httptest.NewRecorder()
|
||||
c := e.NewContext(req, rec)
|
||||
@ -363,7 +362,6 @@ func TestBindParam(t *testing.T) {
|
||||
// Bind something with param and post data payload
|
||||
body := bytes.NewBufferString(`{ "name": "Jon Snow" }`)
|
||||
e2 := New()
|
||||
*e2.maxParam = 2
|
||||
req2 := httptest.NewRequest(POST, "/", body)
|
||||
req2.Header.Set(HeaderContentType, MIMEApplicationJSON)
|
||||
|
||||
|
@ -310,6 +310,7 @@ func (c *context) ParamNames() []string {
|
||||
|
||||
func (c *context) SetParamNames(names ...string) {
|
||||
c.pnames = names
|
||||
*c.echo.maxParam = len(names)
|
||||
}
|
||||
|
||||
func (c *context) ParamValues() []string {
|
||||
@ -317,10 +318,7 @@ func (c *context) ParamValues() []string {
|
||||
}
|
||||
|
||||
func (c *context) SetParamValues(values ...string) {
|
||||
// NOTE: Don't just set c.pvalues = values, because it has to have length c.echo.maxParam at all times
|
||||
for i, val := range values {
|
||||
c.pvalues[i] = val
|
||||
}
|
||||
c.pvalues = values
|
||||
}
|
||||
|
||||
func (c *context) QueryParam(name string) string {
|
||||
|
@ -93,7 +93,6 @@ func (responseWriterErr) WriteHeader(statusCode int) {
|
||||
|
||||
func TestContext(t *testing.T) {
|
||||
e := New()
|
||||
*e.maxParam = 1
|
||||
req := httptest.NewRequest(http.MethodPost, "/", strings.NewReader(userJSON))
|
||||
rec := httptest.NewRecorder()
|
||||
c := e.NewContext(req, rec).(*context)
|
||||
@ -472,7 +471,6 @@ func TestContextPath(t *testing.T) {
|
||||
|
||||
func TestContextPathParam(t *testing.T) {
|
||||
e := New()
|
||||
*e.maxParam = 2
|
||||
req := httptest.NewRequest(http.MethodGet, "/", nil)
|
||||
c := e.NewContext(req, nil)
|
||||
|
||||
@ -491,7 +489,8 @@ func TestContextPathParam(t *testing.T) {
|
||||
|
||||
func TestContextGetAndSetParam(t *testing.T) {
|
||||
e := New()
|
||||
*e.maxParam = 2
|
||||
r := e.Router()
|
||||
r.Add(http.MethodGet, "/:foo", func(Context) error { return nil })
|
||||
req := httptest.NewRequest(http.MethodGet, "/:foo", nil)
|
||||
c := e.NewContext(req, nil)
|
||||
c.SetParamNames("foo")
|
||||
|
@ -60,8 +60,6 @@ func TestJWTRace(t *testing.T) {
|
||||
|
||||
func TestJWT(t *testing.T) {
|
||||
e := echo.New()
|
||||
r := e.Router()
|
||||
r.Add("GET", "/:jwt", func(echo.Context) error { return nil })
|
||||
handler := func(c echo.Context) error {
|
||||
return c.String(http.StatusOK, "test")
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user