implement sending of the request body

This commit is contained in:
Marten Seemann
2017-01-05 14:32:51 +07:00
parent cc97a2fba4
commit e3b34f2120
3 changed files with 138 additions and 15 deletions

View File

@@ -1,6 +1,8 @@
package h2quic
import (
"bytes"
"io"
"net/http"
. "github.com/onsi/ginkgo"
@@ -14,18 +16,31 @@ func (m *mockQuicRoundTripper) Do(req *http.Request) (*http.Response, error) {
}
type mockBody struct {
closed bool
reader bytes.Reader
readErr error
closeErr error
closed bool
}
func (m *mockBody) Read([]byte) (int, error) {
panic("not implemented")
func (m *mockBody) Read(p []byte) (int, error) {
if m.readErr != nil {
return 0, m.readErr
}
return m.reader.Read(p)
}
func (m *mockBody) SetData(data []byte) {
m.reader = *bytes.NewReader(data)
}
func (m *mockBody) Close() error {
m.closed = true
return nil
return m.closeErr
}
// make sure the mockBody can be used as a http.Request.Body
var _ io.ReadCloser = &mockBody{}
var _ = Describe("RoundTripper", func() {
var (
rt *QuicRoundTripper