MCPcopy
hub / github.com/gofiber/fiber / Test_Ctx_Range_LargeFile

Function Test_Ctx_Range_LargeFile

ctx_test.go:5148–5171  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

5146}
5147
5148func Test_Ctx_Range_LargeFile(t *testing.T) {
5149 t.Parallel()
5150 app := New()
5151 c := app.AcquireCtx(&fasthttp.RequestCtx{})
5152 defer app.ReleaseCtx(c)
5153
5154 size := int64(math.MaxInt32) + 1024
5155 start := int64(math.MaxInt32) + 10
5156 end := start + 50
5157
5158 c.Request().Header.Set(HeaderRange, fmt.Sprintf("bytes=%d-%d", start, end))
5159 result, err := c.Range(size)
5160 require.NoError(t, err)
5161 require.Equal(t, "bytes", result.Type)
5162 require.Len(t, result.Ranges, 1)
5163 require.Equal(t, start, result.Ranges[0].Start)
5164 require.Equal(t, end, result.Ranges[0].End)
5165
5166 c.Request().Header.Set(HeaderRange, "bytes=-200")
5167 result, err = c.Range(size)
5168 require.NoError(t, err)
5169 require.Equal(t, size-200, result.Ranges[0].Start)
5170 require.Equal(t, size-1, result.Ranges[0].End)
5171}
5172
5173func Test_Ctx_Range_Overflow(t *testing.T) {
5174 t.Parallel()

Callers

nothing calls this directly

Calls 7

AcquireCtxMethod · 0.80
ReleaseCtxMethod · 0.80
NewFunction · 0.70
SetMethod · 0.65
RequestMethod · 0.65
RangeMethod · 0.65
LenMethod · 0.65

Tested by

no test coverage detected