Skip to content

Commit 3a11587

Browse files
authored
Merge pull request #1348 from ydb-platform/oauth2
fixed TestErrorInHTTPRequest
2 parents 8121837 + 50eced8 commit 3a11587

File tree

1 file changed

+30
-26
lines changed

1 file changed

+30
-26
lines changed

internal/credentials/oauth2_test.go

Lines changed: 30 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -453,34 +453,38 @@ func TestErrorInSourceToken(t *testing.T) {
453453
}
454454

455455
func TestErrorInHTTPRequest(t *testing.T) {
456-
client, err := NewOauth2TokenExchangeCredentials(
457-
WithTokenEndpoint("http://invalid_host:42/exchange"),
458-
WithJWTSubjectToken(
459-
WithRSAPrivateKeyPEMContent([]byte(testRSAPrivateKeyContent)),
460-
WithKeyID("key_id"),
461-
WithSigningMethod(jwt.SigningMethodRS256),
462-
WithIssuer("test_issuer"),
463-
WithAudience("test_audience"),
464-
),
465-
WithJWTActorToken(
466-
WithRSAPrivateKeyPEMContent([]byte(testRSAPrivateKeyContent)),
467-
WithKeyID("key_id"),
468-
WithSigningMethod(jwt.SigningMethodRS256),
469-
WithIssuer("test_issuer"),
470-
),
471-
WithScope("1", "2", "3"),
472-
WithSourceInfo("TestErrorInHTTPRequest"),
473-
WithSyncExchangeTimeout(time.Second*3),
474-
)
475-
require.NoError(t, err)
456+
xtest.TestManyTimes(t, func(t testing.TB) {
457+
client, err := NewOauth2TokenExchangeCredentials(
458+
WithTokenEndpoint("http://invalid_host:42/exchange"),
459+
WithJWTSubjectToken(
460+
WithRSAPrivateKeyPEMContent([]byte(testRSAPrivateKeyContent)),
461+
WithKeyID("key_id"),
462+
WithSigningMethod(jwt.SigningMethodRS256),
463+
WithIssuer("test_issuer"),
464+
WithAudience("test_audience"),
465+
),
466+
WithJWTActorToken(
467+
WithRSAPrivateKeyPEMContent([]byte(testRSAPrivateKeyContent)),
468+
WithKeyID("key_id"),
469+
WithSigningMethod(jwt.SigningMethodRS256),
470+
WithIssuer("test_issuer"),
471+
),
472+
WithScope("1", "2", "3"),
473+
WithSourceInfo("TestErrorInHTTPRequest"),
474+
WithSyncExchangeTimeout(time.Second*3),
475+
)
476+
require.NoError(t, err)
476477

477-
token, err := client.Token(context.Background())
478-
require.ErrorIs(t, err, errCouldNotExchangeToken)
479-
require.Equal(t, "", token)
478+
token, err := client.Token(context.Background())
479+
if !errors.Is(err, context.DeadlineExceeded) {
480+
require.ErrorIs(t, err, errCouldNotExchangeToken)
481+
}
482+
require.Equal(t, "", token)
480483

481-
// check format:
482-
formatted := fmt.Sprint(client)
483-
require.Equal(t, `OAuth2TokenExchange{Endpoint:"http://invalid_host:42/exchange",GrantType:urn:ietf:params:oauth:grant-type:token-exchange,Resource:,Audience:[],Scope:[1 2 3],RequestedTokenType:urn:ietf:params:oauth:token-type:access_token,SubjectToken:JWTTokenSource{Method:RS256,KeyID:key_id,Issuer:"test_issuer",Subject:"",Audience:[test_audience],ID:,TokenTTL:1h0m0s},ActorToken:JWTTokenSource{Method:RS256,KeyID:key_id,Issuer:"test_issuer",Subject:"",Audience:[],ID:,TokenTTL:1h0m0s},From:"TestErrorInHTTPRequest"}`, formatted) //nolint:lll
484+
// check format:
485+
formatted := fmt.Sprint(client)
486+
require.Equal(t, `OAuth2TokenExchange{Endpoint:"http://invalid_host:42/exchange",GrantType:urn:ietf:params:oauth:grant-type:token-exchange,Resource:,Audience:[],Scope:[1 2 3],RequestedTokenType:urn:ietf:params:oauth:token-type:access_token,SubjectToken:JWTTokenSource{Method:RS256,KeyID:key_id,Issuer:"test_issuer",Subject:"",Audience:[test_audience],ID:,TokenTTL:1h0m0s},ActorToken:JWTTokenSource{Method:RS256,KeyID:key_id,Issuer:"test_issuer",Subject:"",Audience:[],ID:,TokenTTL:1h0m0s},From:"TestErrorInHTTPRequest"}`, formatted) //nolint:lll
487+
}, xtest.StopAfter(15*time.Second))
484488
}
485489

486490
func TestJWTTokenSource(t *testing.T) {

0 commit comments

Comments
 (0)