github.com/blend/go-sdk@v1.20220411.3/r2/opt_closer_test.go (about) 1 /* 2 3 Copyright (c) 2022 - Present. Blend Labs, Inc. All rights reserved 4 Use of this source code is governed by a MIT license that can be found in the LICENSE file. 5 6 */ 7 8 package r2 9 10 import ( 11 "fmt" 12 "net/http" 13 "testing" 14 15 "github.com/blend/go-sdk/assert" 16 ) 17 18 func TestOptCloser(t *testing.T) { 19 it := assert.New(t) 20 21 server := mockServerOK() 22 defer server.Close() 23 24 var didCallCloser bool 25 req := New(server.URL, OptCloser(func() error { 26 didCallCloser = true 27 return fmt.Errorf("closer test") 28 })) 29 it.NotNil(req.Closer) 30 31 meta, err := req.Discard() 32 it.True(didCallCloser) 33 it.NotNil(err) 34 it.Equal("closer test", err.Error()) 35 it.Equal(http.StatusOK, meta.StatusCode) 36 }