github.com/qiniu/go-sdk/v7@v7.27.0/client/header_test.go (about) 1 //go:build integration 2 // +build integration 3 4 package client 5 6 import ( 7 "context" 8 "fmt" 9 "net/http" 10 "os" 11 "testing" 12 13 "github.com/qiniu/go-sdk/v7/auth" 14 ) 15 16 func TestQiniuCredentialMultiXQiniuHeader(t *testing.T) { 17 header := http.Header{} 18 header.Add("X-Qiniu-a", "a") 19 header.Add("X-Qiniu-a", "a1") 20 header.Add("X-Qiniu-b", "b") 21 _, err := bucketsWithHeader(header) 22 if err != nil { 23 t.Fatalf("TestMultiXQiniuHeader error:%v", err) 24 } 25 } 26 27 func bucketsWithHeader(header http.Header) (buckets []string, err error) { 28 testAK := os.Getenv("accessKey") 29 testSK := os.Getenv("secretKey") 30 mac := auth.New(testAK, testSK) 31 reqURL := fmt.Sprintf("https://uc.qbox.me/buckets?shared=%v", true) 32 err = DefaultClient.CredentialedCall(context.Background(), mac, auth.TokenQiniu, &buckets, "POST", reqURL, header) 33 return 34 } 35 36 func TestEnableTimeStampSignature(t *testing.T) { 37 os.Setenv("DISABLE_QINIU_TIMESTAMP_SIGNATURE", "false") 38 header := http.Header{} 39 if err := addDefaultHeader(header); err != nil { 40 t.Fatalf("TestEnableXQiniuDate error:%v", err) 41 } 42 xQiniuDate := header.Values(RequestHeaderKeyXQiniuDate) 43 if len(xQiniuDate) == 0 || len(xQiniuDate[0]) == 0 { 44 t.Fatal("TestEnableXQiniuDate xQiniuDate header not set success") 45 } 46 } 47 48 func TestDisableQiniuTimeStampSignature(t *testing.T) { 49 os.Setenv("DISABLE_QINIU_TIMESTAMP_SIGNATURE", "true") 50 51 header := http.Header{} 52 if err := addDefaultHeader(header); err != nil { 53 t.Fatalf("TestDisableXQiniuDate error:%v", err) 54 } 55 xQiniuDate := header.Values(RequestHeaderKeyXQiniuDate) 56 if len(xQiniuDate) > 0 { 57 t.Fatal("TestDisableXQiniuDate xQiniuDate header should not set success") 58 } 59 }