|
|
@@ -42,6 +42,8 @@ func createMultipartRequest() *http.Request {
|
|
|
must(mw.WriteField("array", "first"))
|
|
|
must(mw.WriteField("array", "second"))
|
|
|
must(mw.WriteField("id", ""))
|
|
|
+ must(mw.WriteField("time_local", "31/12/2016 14:55"))
|
|
|
+ must(mw.WriteField("time_utc", "31/12/2016 14:55"))
|
|
|
req, err := http.NewRequest("POST", "/", body)
|
|
|
must(err)
|
|
|
req.Header.Set("Content-Type", MIMEMultipartPOSTForm+"; boundary="+boundary)
|
|
|
@@ -309,11 +311,14 @@ func TestContextPostFormMultipart(t *testing.T) {
|
|
|
c.Request = createMultipartRequest()
|
|
|
|
|
|
var obj struct {
|
|
|
- Foo string `form:"foo"`
|
|
|
- Bar string `form:"bar"`
|
|
|
- BarAsInt int `form:"bar"`
|
|
|
- Array []string `form:"array"`
|
|
|
- ID string `form:"id"`
|
|
|
+ Foo string `form:"foo"`
|
|
|
+ Bar string `form:"bar"`
|
|
|
+ BarAsInt int `form:"bar"`
|
|
|
+ Array []string `form:"array"`
|
|
|
+ ID string `form:"id"`
|
|
|
+ TimeLocal time.Time `form:"time_local" time_format:"02/01/2006 15:04"`
|
|
|
+ TimeUTC time.Time `form:"time_utc" time_format:"02/01/2006 15:04" time_utc:"1"`
|
|
|
+ BlankTime time.Time `form:"blank_time" time_format:"02/01/2006 15:04"`
|
|
|
}
|
|
|
assert.NoError(t, c.Bind(&obj))
|
|
|
assert.Equal(t, obj.Foo, "bar")
|
|
|
@@ -321,6 +326,11 @@ func TestContextPostFormMultipart(t *testing.T) {
|
|
|
assert.Equal(t, obj.BarAsInt, 10)
|
|
|
assert.Equal(t, obj.Array, []string{"first", "second"})
|
|
|
assert.Equal(t, obj.ID, "")
|
|
|
+ assert.Equal(t, obj.TimeLocal.Format("02/01/2006 15:04"), "31/12/2016 14:55")
|
|
|
+ assert.Equal(t, obj.TimeLocal.Location(), time.Local)
|
|
|
+ assert.Equal(t, obj.TimeUTC.Format("02/01/2006 15:04"), "31/12/2016 14:55")
|
|
|
+ assert.Equal(t, obj.TimeUTC.Location(), time.UTC)
|
|
|
+ assert.True(t, obj.BlankTime.IsZero())
|
|
|
|
|
|
value, ok := c.GetQuery("foo")
|
|
|
assert.False(t, ok)
|