@@ -2157,6 +2157,8 @@ public void ConfidentialClient_WithInvalidAuthority_ThrowsArgumentException()
2157
2157
[ TestMethod ]
2158
2158
public async Task WithAccessTokenSha256ToRefresh_MatchingHash_GetsTokenFromIdp_Async ( )
2159
2159
{
2160
+ const string accessToken = "access-token" ;
2161
+
2160
2162
// Arrange
2161
2163
using ( var httpManager = new MockHttpManager ( ) )
2162
2164
{
@@ -2170,19 +2172,19 @@ public async Task WithAccessTokenSha256ToRefresh_MatchingHash_GetsTokenFromIdp_A
2170
2172
. BuildConcrete ( ) ;
2171
2173
2172
2174
// 1) First network call: populates the cache with "access-token"
2173
- httpManager . AddMockHandlerSuccessfulClientCredentialTokenResponseMessage ( token : "access-token" ) ;
2175
+ httpManager . AddMockHandlerSuccessfulClientCredentialTokenResponseMessage ( token : accessToken ) ;
2174
2176
AuthenticationResult initialResult = await app . AcquireTokenForClient ( TestConstants . s_scope ) . ExecuteAsync ( ) . ConfigureAwait ( false ) ;
2175
2177
2176
- Assert . AreEqual ( "access-token" , initialResult . AccessToken ) ;
2178
+ Assert . AreEqual ( accessToken , initialResult . AccessToken ) ;
2177
2179
Assert . AreEqual ( TokenSource . IdentityProvider , initialResult . AuthenticationResultMetadata . TokenSource ) ;
2178
2180
2179
2181
// 2) Second call: re-check the cache. Should see the same token from cache
2180
2182
AuthenticationResult secondResult = await app . AcquireTokenForClient ( TestConstants . s_scope ) . ExecuteAsync ( ) . ConfigureAwait ( false ) ;
2181
- Assert . AreEqual ( "access-token" , secondResult . AccessToken ) ;
2183
+ Assert . AreEqual ( accessToken , secondResult . AccessToken ) ;
2182
2184
Assert . AreEqual ( TokenSource . Cache , secondResult . AuthenticationResultMetadata . TokenSource ) ;
2183
2185
2184
2186
// 3) Now specify the same token's hash as "bad" => expect a new token from IdP
2185
- string tokenHash = ComputeSHA256 ( "access-token" ) ;
2187
+ string tokenHash = ComputeSHA256 ( accessToken ) ;
2186
2188
2187
2189
// Add another network response to simulate fetching a new token
2188
2190
httpManager . AddMockHandlerSuccessfulClientCredentialTokenResponseMessage ( token : "new-access-token" ) ;
@@ -2263,6 +2265,9 @@ public async Task ForceRefreshAndAccessTokenHash_ThrowsException_Async()
2263
2265
[ TestMethod ]
2264
2266
public async Task AcquireTokenForClient_WithClaims_And_MatchingHash_SkipsCache_Async ( )
2265
2267
{
2268
+ const string oldToken = "old-token" ;
2269
+ const string freshToken = "fresh-token" ;
2270
+
2266
2271
using ( var httpManager = new MockHttpManager ( ) )
2267
2272
{
2268
2273
httpManager . AddInstanceDiscoveryMockHandler ( ) ;
@@ -2275,16 +2280,16 @@ public async Task AcquireTokenForClient_WithClaims_And_MatchingHash_SkipsCache_A
2275
2280
. WithExperimentalFeatures ( true )
2276
2281
. BuildConcrete ( ) ;
2277
2282
2278
- httpManager . AddMockHandlerSuccessfulClientCredentialTokenResponseMessage ( token : "old-token" ) ;
2283
+ httpManager . AddMockHandlerSuccessfulClientCredentialTokenResponseMessage ( token : oldToken ) ;
2279
2284
AuthenticationResult firstResult = await app . AcquireTokenForClient ( TestConstants . s_scope ) . ExecuteAsync ( ) . ConfigureAwait ( false ) ;
2280
2285
2281
- Assert . AreEqual ( "old-token" , firstResult . AccessToken ) ;
2286
+ Assert . AreEqual ( oldToken , firstResult . AccessToken ) ;
2282
2287
2283
2288
// 2) We do matching hash => a new token is returned
2284
- string tokenHash = ComputeSHA256 ( "old-token" ) ;
2289
+ string tokenHash = ComputeSHA256 ( oldToken ) ;
2285
2290
2286
2291
// Add second network response for the new token
2287
- httpManager . AddMockHandlerSuccessfulClientCredentialTokenResponseMessage ( token : "fresh-token" ) ;
2292
+ httpManager . AddMockHandlerSuccessfulClientCredentialTokenResponseMessage ( token : freshToken ) ;
2288
2293
2289
2294
// Act
2290
2295
AuthenticationResult result = await app . AcquireTokenForClient ( TestConstants . s_scope )
@@ -2294,14 +2299,16 @@ public async Task AcquireTokenForClient_WithClaims_And_MatchingHash_SkipsCache_A
2294
2299
. ConfigureAwait ( false ) ;
2295
2300
2296
2301
// Assert => new token from the IDP
2297
- Assert . AreEqual ( "fresh-token" , result . AccessToken ) ;
2302
+ Assert . AreEqual ( freshToken , result . AccessToken ) ;
2298
2303
Assert . AreEqual ( TokenSource . IdentityProvider , result . AuthenticationResultMetadata . TokenSource ) ;
2299
2304
}
2300
2305
}
2301
2306
2302
2307
[ TestMethod ]
2303
2308
public async Task AcquireTokenForClient_WithClaims_And_MismatchedHash_UsesCache_Async ( )
2304
2309
{
2310
+ const string cacheToken = "cache-token" ;
2311
+
2305
2312
using ( var httpManager = new MockHttpManager ( ) )
2306
2313
{
2307
2314
httpManager . AddInstanceDiscoveryMockHandler ( ) ;
@@ -2315,13 +2322,13 @@ public async Task AcquireTokenForClient_WithClaims_And_MismatchedHash_UsesCache_
2315
2322
. BuildConcrete ( ) ;
2316
2323
2317
2324
// First network call: populates the cache with "cache-token"
2318
- httpManager . AddMockHandlerSuccessfulClientCredentialTokenResponseMessage ( token : "cache-token" ) ;
2325
+ httpManager . AddMockHandlerSuccessfulClientCredentialTokenResponseMessage ( token : cacheToken ) ;
2319
2326
2320
2327
var initialResult = await app . AcquireTokenForClient ( TestConstants . s_scope )
2321
2328
. ExecuteAsync ( )
2322
2329
. ConfigureAwait ( false ) ;
2323
2330
2324
- Assert . AreEqual ( "cache-token" , initialResult . AccessToken ) ;
2331
+ Assert . AreEqual ( cacheToken , initialResult . AccessToken ) ;
2325
2332
Assert . AreEqual ( TokenSource . IdentityProvider , initialResult . AuthenticationResultMetadata . TokenSource ) ;
2326
2333
2327
2334
// 2) We'll do a mismatched hash => expect to keep using the cached token
@@ -2335,7 +2342,7 @@ public async Task AcquireTokenForClient_WithClaims_And_MismatchedHash_UsesCache_
2335
2342
. ConfigureAwait ( false ) ;
2336
2343
2337
2344
// Assert => we keep using the cached token
2338
- Assert . AreEqual ( "cache-token" , result . AccessToken ,
2345
+ Assert . AreEqual ( cacheToken , result . AccessToken ,
2339
2346
"We reuse the cache if the hash does not match the 'bad' token’s hash." ) ;
2340
2347
Assert . AreEqual ( TokenSource . Cache , result . AuthenticationResultMetadata . TokenSource ) ;
2341
2348
}
0 commit comments