github.com/blend/go-sdk@v1.20220411.3/r2/opt_tls_handshake_timeout_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 "net/http" 12 "testing" 13 "time" 14 15 "github.com/blend/go-sdk/assert" 16 ) 17 18 func TestOptTLSHandshakeTimeout(t *testing.T) { 19 assert := assert.New(t) 20 21 r := New(TestURL, OptTLSHandshakeTimeout(time.Second)) 22 assert.Equal(time.Second, r.Client.Transport.(*http.Transport).TLSHandshakeTimeout) 23 } 24 25 func TestOptTLSHandshakeTimeoutWithNilTransport(t *testing.T) { 26 assert := assert.New(t) 27 28 var transport *http.Transport 29 req := New( 30 TestURL, 31 // NOTE: Transport **must** come before the root CAs since the CAs get set 32 // **on** the transport. 33 OptTransport(transport), 34 OptTLSHandshakeTimeout(time.Second), 35 ) 36 37 assert.NotNil(req.Client) 38 assert.NotNil(req.Client.Transport) 39 typed, ok := req.Client.Transport.(*http.Transport) 40 assert.True(ok) 41 assert.NotNil(typed) 42 assert.Equal(time.Second, typed.TLSHandshakeTimeout) 43 }