MCPcopy
hub / github.com/minio/minio-go / TestSts

Function TestSts

pkg/credentials/iam_aws_test.go:331–369  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

329}
330
331func TestSts(t *testing.T) {
332 server := initStsTestServer("2014-12-16T01:51:37Z")
333 defer server.Close()
334 p := &IAM{
335 Endpoint: server.URL,
336 }
337
338 f, err := os.CreateTemp(t.TempDir(), "minio-go")
339 if err != nil {
340 t.Errorf("Unexpected failure %s", err)
341 }
342 defer os.Remove(f.Name())
343 f.Write([]byte("token"))
344 f.Close()
345
346 t.Setenv("AWS_WEB_IDENTITY_TOKEN_FILE", f.Name())
347 t.Setenv("AWS_ROLE_ARN", "arn:aws:sts::123456789012:assumed-role/FederatedWebIdentityRole/app1")
348 creds, err := p.RetrieveWithCredContext(defaultCredContext)
349 os.Unsetenv("AWS_WEB_IDENTITY_TOKEN_FILE")
350 os.Unsetenv("AWS_ROLE_ARN")
351 if err != nil {
352 t.Errorf("Unexpected failure %s", err)
353 }
354 if creds.AccessKeyID != "accessKey" {
355 t.Errorf("Expected \"accessKey\", got %s", creds.AccessKeyID)
356 }
357
358 if creds.SecretAccessKey != "secret" {
359 t.Errorf("Expected \"secret\", got %s", creds.SecretAccessKey)
360 }
361
362 if creds.SessionToken != "token" {
363 t.Errorf("Expected \"token\", got %s", creds.SessionToken)
364 }
365
366 if !p.IsExpired() {
367 t.Error("Expected creds to be expired.")
368 }
369}
370
371func TestStsCn(t *testing.T) {
372 server := initStsTestServer("2014-12-16T01:51:37Z")

Callers

nothing calls this directly

Calls 6

initStsTestServerFunction · 0.85
IsExpiredMethod · 0.65
CloseMethod · 0.45
RemoveMethod · 0.45
ErrorMethod · 0.45

Tested by

no test coverage detected