aboutsummaryrefslogtreecommitdiff
path: root/src/net/http/request_test.go
diff options
context:
space:
mode:
authorShulhan <m.shulhan@gmail.com>2023-05-11 15:23:39 +0700
committerShulhan <m.shulhan@gmail.com>2023-05-11 16:16:12 +0700
commit9d1afbf308f2ac382f364f935867ce0cef0a3573 (patch)
treef4e3818d1b44329dea9a5a7f4a8021f0edeb087d /src/net/http/request_test.go
parenta2838ec5f20b56e94a18c873ab4b68397355e214 (diff)
downloadgo-ms-fix-multipart-readform.tar.xz
mime/multipart: fix ReadForm always return (nil,io.EOF)ms-fix-multipart-readform
Previously, the condition err == io.EOF in readForm will never true and break; it always goes to the second condition, err != nil, which cause the returned ReadForm always nil with err is io.EOF. As the test, we use the example with body almost similar to ExampleNewReader with header contains "Content-Disposition:form-data". Change-Id: I7268f45bb26eafb7f1e6e471b86eec681dde99f7
Diffstat (limited to 'src/net/http/request_test.go')
-rw-r--r--src/net/http/request_test.go11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/net/http/request_test.go b/src/net/http/request_test.go
index 78b968f23c..c952b0ad26 100644
--- a/src/net/http/request_test.go
+++ b/src/net/http/request_test.go
@@ -251,14 +251,17 @@ func TestParseMultipartForm(t *testing.T) {
Body: io.NopCloser(new(bytes.Buffer)),
}
err := req.ParseMultipartForm(25)
- if err == nil {
- t.Error("expected multipart EOF, got nil")
+ if err != nil {
+ t.Errorf("expecting nil, got %v", err)
}
+ // Reset to allow the call to multipartReader.
+ req.MultipartForm = nil
+
req.Header = Header{"Content-Type": {"text/plain"}}
err = req.ParseMultipartForm(25)
- if err != ErrNotMultipart {
- t.Error("expected ErrNotMultipart for text/plain")
+ if !errors.Is(err, ErrNotMultipart) {
+ t.Errorf("expected ErrNotMultipart for text/plain, got %v", err)
}
}