mirror of
https://github.com/imgproxy/imgproxy.git
synced 2025-02-12 11:46:10 +02:00
Use custom HTTP client with Azure; Fix Azure transport tests
This commit is contained in:
parent
4f43f2ca23
commit
3b252b83e4
@ -10,6 +10,7 @@ import (
|
||||
"strings"
|
||||
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azcore/policy"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/storage/azblob"
|
||||
"github.com/Azure/azure-sdk-for-go/sdk/storage/azblob/blob"
|
||||
@ -17,6 +18,7 @@ import (
|
||||
|
||||
"github.com/imgproxy/imgproxy/v3/config"
|
||||
"github.com/imgproxy/imgproxy/v3/httprange"
|
||||
defaultTransport "github.com/imgproxy/imgproxy/v3/transport"
|
||||
"github.com/imgproxy/imgproxy/v3/transport/notmodified"
|
||||
)
|
||||
|
||||
@ -46,20 +48,31 @@ func New() (http.RoundTripper, error) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
trans, err := defaultTransport.New(false)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
opts := azblob.ClientOptions{
|
||||
ClientOptions: policy.ClientOptions{
|
||||
Transport: &http.Client{Transport: trans},
|
||||
},
|
||||
}
|
||||
|
||||
if len(config.ABSKey) > 0 {
|
||||
sharedKeyCredential, err = azblob.NewSharedKeyCredential(config.ABSName, config.ABSKey)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
client, err = azblob.NewClientWithSharedKeyCredential(endpointURL.String(), sharedKeyCredential, nil)
|
||||
client, err = azblob.NewClientWithSharedKeyCredential(endpointURL.String(), sharedKeyCredential, &opts)
|
||||
} else {
|
||||
defaultAzureCredential, err = azidentity.NewDefaultAzureCredential(nil)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
client, err = azblob.NewClient(endpointURL.String(), defaultAzureCredential, nil)
|
||||
client, err = azblob.NewClient(endpointURL.String(), defaultAzureCredential, &opts)
|
||||
}
|
||||
|
||||
if err != nil {
|
||||
|
@ -28,10 +28,12 @@ func (s *AzureTestSuite) SetupSuite() {
|
||||
|
||||
logrus.SetOutput(os.Stdout)
|
||||
|
||||
config.IgnoreSslVerification = true
|
||||
|
||||
s.etag = "testetag"
|
||||
s.lastModified, _ = time.Parse(http.TimeFormat, "Wed, 21 Oct 2015 07:28:00 GMT")
|
||||
|
||||
s.server = httptest.NewServer(http.HandlerFunc(func(rw http.ResponseWriter, r *http.Request) {
|
||||
s.server = httptest.NewTLSServer(http.HandlerFunc(func(rw http.ResponseWriter, r *http.Request) {
|
||||
require.Equal(s.T(), "/test/foo/test.png", r.URL.Path)
|
||||
|
||||
rw.Header().Set("Etag", s.etag)
|
||||
@ -52,6 +54,7 @@ func (s *AzureTestSuite) SetupSuite() {
|
||||
|
||||
func (s *AzureTestSuite) TearDownSuite() {
|
||||
s.server.Close()
|
||||
config.IgnoreSslVerification = false
|
||||
}
|
||||
|
||||
func (s *AzureTestSuite) TestRoundTripWithETagDisabledReturns200() {
|
||||
|
Loading…
x
Reference in New Issue
Block a user