MCPcopy Create free account
hub / github.com/gavv/httpexpect / Close

Method Close

body_wrapper.go:99–131  ·  view source on GitHub ↗

Close body.

()

Source from the content-addressed store, hash-verified

97
98// Close body.
99func (bw *bodyWrapper) Close() error {
100 bw.mu.Lock()
101 defer bw.mu.Unlock()
102
103 // Preserve original reader error.
104 err := bw.closeErr
105
106 // Rewind or GetBody may be called later, so be sure to
107 // read body into memory before closing.
108 if !bw.isRewindDisabled && !bw.isFullyRead {
109 bw.isReadBefore = true
110
111 if readErr := bw.httpReadFull(); readErr != nil {
112 err = readErr
113 }
114 }
115
116 // Close original reader.
117 closeErr := bw.closeAndCancel()
118 if closeErr != nil {
119 err = closeErr
120 }
121
122 // Reset memory reader.
123 bw.memReader = bytes.NewReader(nil)
124
125 // Free memory when rewind is disabled.
126 if bw.isRewindDisabled {
127 bw.memBytes = nil
128 }
129
130 return err
131}
132
133// Rewind reading to the beginning.
134func (bw *bodyWrapper) Rewind() {

Callers

nothing calls this directly

Calls 4

httpReadFullMethod · 0.95
closeAndCancelMethod · 0.95
LockMethod · 0.80
UnlockMethod · 0.80

Tested by

no test coverage detected