From eb61c50ce3a0a8bb783886e8d3a14a5347dd7136 Mon Sep 17 00:00:00 2001 From: pinlu Date: Tue, 6 Sep 2022 13:24:49 -0700 Subject: [PATCH 1/6] Add unit test for updateAuthState in GIDGoogleUserTest --- GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m | 81 ++++++++++++++++++++- 1 file changed, 80 insertions(+), 1 deletion(-) diff --git a/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m b/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m index 8196da40..8a5671c9 100644 --- a/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m +++ b/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m @@ -26,6 +26,7 @@ #import "GoogleSignIn/Tests/Unit/GIDProfileData+Testing.h" #import "GoogleSignIn/Tests/Unit/OIDAuthState+Testing.h" #import "GoogleSignIn/Tests/Unit/OIDAuthorizationRequest+Testing.h" +#import "GoogleSignIn/Tests/Unit/OIDTokenRequest+Testing.h" #import "GoogleSignIn/Tests/Unit/OIDTokenResponse+Testing.h" #ifdef SWIFT_PACKAGE @@ -34,10 +35,28 @@ #import #endif +static NSString *const kNewAccessToken = @"new_access_token"; +static NSTimeInterval const kExpireTime = 442886117; +static NSTimeInterval const kNewExpireTime = 442886123; +static NSTimeInterval const kNewExpireTime2 = 442886124; + +static NSTimeInterval const kTimeAccuracy = 10; + @interface GIDGoogleUserTest : XCTestCase @end -@implementation GIDGoogleUserTest +@implementation GIDGoogleUserTest { + // Fake data used to generate the expiration date of the access token. + NSTimeInterval _accessTokenExpireTime; + + // Fake data used to generate the expiration date of the ID token. + NSTimeInterval _idTokenExpireTime; +} + +- (void)setUp { + _accessTokenExpireTime = kAccessTokenExpiresIn; + _idTokenExpireTime = kExpireTime; +} #pragma mark - Tests @@ -91,4 +110,64 @@ - (void)testLegacyCoding { } #endif // TARGET_OS_IOS || TARGET_OS_MACCATALYST +- (void) testUpdateAuthState { + GIDGoogleUser *user = [self googleUser]; + XCTAssertEqualObjects(user.accessToken.tokenString, kAccessToken); + [self assertDate:user.accessToken.expirationDate equalTime:_accessTokenExpireTime]; + XCTAssertEqualObjects(user.idToken.tokenString, [self idToken]); + [self assertDate:user.idToken.expirationDate equalTime:_idTokenExpireTime]; + + OIDAuthState *newAuthState = [self newAuthState]; + [user updateAuthState:newAuthState profileData:nil]; + + XCTAssertEqualObjects(user.accessToken.tokenString, kNewAccessToken); + [self assertDate:user.accessToken.expirationDate equalTime:kNewExpireTime]; + XCTAssertEqualObjects(user.idToken.tokenString, [self idTokenNew]); + [self assertDate:user.idToken.expirationDate equalTime:kNewExpireTime2]; +} + +#pragma mark - Helpers + +- (GIDGoogleUser *)googleUser { + NSString *idToken = [self idToken]; + NSNumber *accessTokenExpiresIn = + @(_accessTokenExpireTime - [[NSDate date] timeIntervalSinceReferenceDate]); + OIDTokenRequest *tokenRequest = + [OIDTokenRequest testInstanceWithAdditionalParameters:nil]; + OIDTokenResponse *tokenResponse = + [OIDTokenResponse testInstanceWithIDToken:idToken + accessToken:kAccessToken + expiresIn:accessTokenExpiresIn + tokenRequest:tokenRequest]; + return [[GIDGoogleUser alloc] + initWithAuthState:[OIDAuthState testInstanceWithTokenResponse:tokenResponse] + profileData:nil]; +} + +- (NSString *)idToken { + return [self idTokenWithExpireTime:_idTokenExpireTime]; +} + +- (NSString *)idTokenNew { + return [self idTokenWithExpireTime:kNewExpireTime2]; +} + +- (NSString *)idTokenWithExpireTime:(NSTimeInterval)expireTime { + return [OIDTokenResponse idTokenWithSub:kUserID exp:@(expireTime + NSTimeIntervalSince1970)]; +} + +- (OIDAuthState *)newAuthState { + NSNumber *expiresIn = @(kNewExpireTime - [NSDate timeIntervalSinceReferenceDate]); + OIDTokenResponse *newResponse = + [OIDTokenResponse testInstanceWithIDToken:[self idTokenNew] + accessToken:kNewAccessToken + expiresIn:expiresIn + tokenRequest:nil]; + return [OIDAuthState testInstanceWithTokenResponse:newResponse]; +} + +- (void)assertDate:(NSDate *)date equalTime:(NSTimeInterval)time { + XCTAssertEqualWithAccuracy([date timeIntervalSinceReferenceDate], time, kTimeAccuracy); +} + @end From 4433f5f6852667359d20ac9996bb28ac99325df1 Mon Sep 17 00:00:00 2001 From: pinlu Date: Wed, 7 Sep 2022 17:21:01 -0700 Subject: [PATCH 2/6] Restructures unit tests - Adds a new initializer in OIDAuthState+Testing. - Renames unclear constants. - Makes the unit tests more descriptive and understandable. --- GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m | 81 ++++++------------- .../Tests/Unit/OIDAuthState+Testing.h | 4 + .../Tests/Unit/OIDAuthState+Testing.m | 13 +++ 3 files changed, 43 insertions(+), 55 deletions(-) diff --git a/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m b/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m index 8a5671c9..894304b0 100644 --- a/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m +++ b/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m @@ -36,10 +36,10 @@ #endif static NSString *const kNewAccessToken = @"new_access_token"; -static NSTimeInterval const kExpireTime = 442886117; -static NSTimeInterval const kNewExpireTime = 442886123; -static NSTimeInterval const kNewExpireTime2 = 442886124; - +static NSTimeInterval const kAccessTokenExpireTime = 442886100; +static NSTimeInterval const kIDTokenExpireTime = 442886118; +static NSTimeInterval const kNewAccessTokenExpireTime = 442886200; +static NSTimeInterval const kNewIDTokenExpireTime = 442886224; static NSTimeInterval const kTimeAccuracy = 10; @interface GIDGoogleUserTest : XCTestCase @@ -53,11 +53,6 @@ @implementation GIDGoogleUserTest { NSTimeInterval _idTokenExpireTime; } -- (void)setUp { - _accessTokenExpireTime = kAccessTokenExpiresIn; - _idTokenExpireTime = kExpireTime; -} - #pragma mark - Tests - (void)testInitWithAuthState { @@ -111,63 +106,39 @@ - (void)testLegacyCoding { #endif // TARGET_OS_IOS || TARGET_OS_MACCATALYST - (void) testUpdateAuthState { - GIDGoogleUser *user = [self googleUser]; + NSString *idToken = [self idTokenWithExpireTime:kIDTokenExpireTime]; + OIDAuthState *authState = [OIDAuthState testInstanceWithIDToken:idToken + accessToken:kAccessToken + accessTokenExpireTime:kAccessTokenExpireTime]; + + GIDGoogleUser *user = [[GIDGoogleUser alloc] initWithAuthState:authState profileData:nil]; + XCTAssertEqualObjects(user.accessToken.tokenString, kAccessToken); - [self assertDate:user.accessToken.expirationDate equalTime:_accessTokenExpireTime]; - XCTAssertEqualObjects(user.idToken.tokenString, [self idToken]); - [self assertDate:user.idToken.expirationDate equalTime:_idTokenExpireTime]; + XCTAssertEqualWithAccuracy([user.accessToken.expirationDate timeIntervalSinceReferenceDate], + kAccessTokenExpireTime, kTimeAccuracy); + XCTAssertEqualObjects(user.idToken.tokenString, idToken); + XCTAssertEqualWithAccuracy([user.idToken.expirationDate timeIntervalSinceReferenceDate], + kIDTokenExpireTime, kTimeAccuracy); + + NSString *idTokenNew = [self idTokenWithExpireTime:kNewIDTokenExpireTime]; + OIDAuthState *newAuthState = [OIDAuthState testInstanceWithIDToken:idTokenNew + accessToken:kNewAccessToken + accessTokenExpireTime:kNewAccessTokenExpireTime]; - OIDAuthState *newAuthState = [self newAuthState]; [user updateAuthState:newAuthState profileData:nil]; XCTAssertEqualObjects(user.accessToken.tokenString, kNewAccessToken); - [self assertDate:user.accessToken.expirationDate equalTime:kNewExpireTime]; - XCTAssertEqualObjects(user.idToken.tokenString, [self idTokenNew]); - [self assertDate:user.idToken.expirationDate equalTime:kNewExpireTime2]; + XCTAssertEqualWithAccuracy([user.accessToken.expirationDate timeIntervalSinceReferenceDate], + kNewAccessTokenExpireTime, kTimeAccuracy); + XCTAssertEqualObjects(user.idToken.tokenString, idTokenNew); + XCTAssertEqualWithAccuracy([user.idToken.expirationDate timeIntervalSinceReferenceDate], + kNewIDTokenExpireTime, kTimeAccuracy); } #pragma mark - Helpers -- (GIDGoogleUser *)googleUser { - NSString *idToken = [self idToken]; - NSNumber *accessTokenExpiresIn = - @(_accessTokenExpireTime - [[NSDate date] timeIntervalSinceReferenceDate]); - OIDTokenRequest *tokenRequest = - [OIDTokenRequest testInstanceWithAdditionalParameters:nil]; - OIDTokenResponse *tokenResponse = - [OIDTokenResponse testInstanceWithIDToken:idToken - accessToken:kAccessToken - expiresIn:accessTokenExpiresIn - tokenRequest:tokenRequest]; - return [[GIDGoogleUser alloc] - initWithAuthState:[OIDAuthState testInstanceWithTokenResponse:tokenResponse] - profileData:nil]; -} - -- (NSString *)idToken { - return [self idTokenWithExpireTime:_idTokenExpireTime]; -} - -- (NSString *)idTokenNew { - return [self idTokenWithExpireTime:kNewExpireTime2]; -} - - (NSString *)idTokenWithExpireTime:(NSTimeInterval)expireTime { return [OIDTokenResponse idTokenWithSub:kUserID exp:@(expireTime + NSTimeIntervalSince1970)]; } -- (OIDAuthState *)newAuthState { - NSNumber *expiresIn = @(kNewExpireTime - [NSDate timeIntervalSinceReferenceDate]); - OIDTokenResponse *newResponse = - [OIDTokenResponse testInstanceWithIDToken:[self idTokenNew] - accessToken:kNewAccessToken - expiresIn:expiresIn - tokenRequest:nil]; - return [OIDAuthState testInstanceWithTokenResponse:newResponse]; -} - -- (void)assertDate:(NSDate *)date equalTime:(NSTimeInterval)time { - XCTAssertEqualWithAccuracy([date timeIntervalSinceReferenceDate], time, kTimeAccuracy); -} - @end diff --git a/GoogleSignIn/Tests/Unit/OIDAuthState+Testing.h b/GoogleSignIn/Tests/Unit/OIDAuthState+Testing.h index bc97e6d2..b255352f 100644 --- a/GoogleSignIn/Tests/Unit/OIDAuthState+Testing.h +++ b/GoogleSignIn/Tests/Unit/OIDAuthState+Testing.h @@ -28,4 +28,8 @@ + (instancetype)testInstanceWithTokenResponse:(OIDTokenResponse *)tokenResponse; ++ (instancetype)testInstanceWithIDToken:(NSString *)idToken + accessToken:(NSString *)accessToken + accessTokenExpireTime:(NSTimeInterval)accessTokenExpireTime; + @end diff --git a/GoogleSignIn/Tests/Unit/OIDAuthState+Testing.m b/GoogleSignIn/Tests/Unit/OIDAuthState+Testing.m index a58994da..cc449613 100644 --- a/GoogleSignIn/Tests/Unit/OIDAuthState+Testing.m +++ b/GoogleSignIn/Tests/Unit/OIDAuthState+Testing.m @@ -33,4 +33,17 @@ + (instancetype)testInstanceWithTokenResponse:(OIDTokenResponse *)tokenResponse tokenResponse:tokenResponse]; } ++ (instancetype)testInstanceWithIDToken:(NSString *)idToken + accessToken:(NSString *)accessToken + accessTokenExpireTime:(NSTimeInterval)accessTokenExpireTime { + NSNumber *accessTokenExpiresIn = + @(accessTokenExpireTime - [[NSDate date] timeIntervalSinceReferenceDate]); + OIDTokenResponse *newResponse = + [OIDTokenResponse testInstanceWithIDToken:idToken + accessToken:accessToken + expiresIn:accessTokenExpiresIn + tokenRequest:nil]; + return [OIDAuthState testInstanceWithTokenResponse:newResponse]; +} + @end From 18efcf7c32ed4e144bf02d7a9bb4db345c87fd9e Mon Sep 17 00:00:00 2001 From: pinlu Date: Thu, 8 Sep 2022 10:32:55 -0700 Subject: [PATCH 3/6] Syntax improvements --- GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m | 2 +- GoogleSignIn/Tests/Unit/OIDAuthState+Testing.m | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m b/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m index 894304b0..84a784e6 100644 --- a/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m +++ b/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m @@ -105,7 +105,7 @@ - (void)testLegacyCoding { } #endif // TARGET_OS_IOS || TARGET_OS_MACCATALYST -- (void) testUpdateAuthState { +- (void)testUpdateAuthState { NSString *idToken = [self idTokenWithExpireTime:kIDTokenExpireTime]; OIDAuthState *authState = [OIDAuthState testInstanceWithIDToken:idToken accessToken:kAccessToken diff --git a/GoogleSignIn/Tests/Unit/OIDAuthState+Testing.m b/GoogleSignIn/Tests/Unit/OIDAuthState+Testing.m index cc449613..6c019820 100644 --- a/GoogleSignIn/Tests/Unit/OIDAuthState+Testing.m +++ b/GoogleSignIn/Tests/Unit/OIDAuthState+Testing.m @@ -39,11 +39,11 @@ + (instancetype)testInstanceWithIDToken:(NSString *)idToken NSNumber *accessTokenExpiresIn = @(accessTokenExpireTime - [[NSDate date] timeIntervalSinceReferenceDate]); OIDTokenResponse *newResponse = - [OIDTokenResponse testInstanceWithIDToken:idToken - accessToken:accessToken - expiresIn:accessTokenExpiresIn - tokenRequest:nil]; - return [OIDAuthState testInstanceWithTokenResponse:newResponse]; + [OIDTokenResponse testInstanceWithIDToken:idToken + accessToken:accessToken + expiresIn:accessTokenExpiresIn + tokenRequest:nil]; + return [self testInstanceWithTokenResponse:newResponse]; } @end From c44c52182d1eafa91823b63525b3390e41ccc5a3 Mon Sep 17 00:00:00 2001 From: pinlu Date: Fri, 9 Sep 2022 14:07:45 -0700 Subject: [PATCH 4/6] Uses and tests profileDate in test case `testUpdateAuthState`. --- GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m b/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m index 84a784e6..52a0db0f 100644 --- a/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m +++ b/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m @@ -119,13 +119,15 @@ - (void)testUpdateAuthState { XCTAssertEqualObjects(user.idToken.tokenString, idToken); XCTAssertEqualWithAccuracy([user.idToken.expirationDate timeIntervalSinceReferenceDate], kIDTokenExpireTime, kTimeAccuracy); + XCTAssertNil(user.profile); NSString *idTokenNew = [self idTokenWithExpireTime:kNewIDTokenExpireTime]; OIDAuthState *newAuthState = [OIDAuthState testInstanceWithIDToken:idTokenNew accessToken:kNewAccessToken accessTokenExpireTime:kNewAccessTokenExpireTime]; + GIDProfileData *newProfileData = [GIDProfileData testInstance]; - [user updateAuthState:newAuthState profileData:nil]; + [user updateAuthState:newAuthState profileData:newProfileData]; XCTAssertEqualObjects(user.accessToken.tokenString, kNewAccessToken); XCTAssertEqualWithAccuracy([user.accessToken.expirationDate timeIntervalSinceReferenceDate], @@ -133,6 +135,7 @@ - (void)testUpdateAuthState { XCTAssertEqualObjects(user.idToken.tokenString, idTokenNew); XCTAssertEqualWithAccuracy([user.idToken.expirationDate timeIntervalSinceReferenceDate], kNewIDTokenExpireTime, kTimeAccuracy); + XCTAssertEqual(user.profile, newProfileData); } #pragma mark - Helpers From 150e0ec6c1d3534dc9626e123bc02192c56305fd Mon Sep 17 00:00:00 2001 From: pinlu Date: Fri, 9 Sep 2022 17:09:10 -0700 Subject: [PATCH 5/6] Move some constants into test cases. --- GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m | 45 +++++++++------------ 1 file changed, 20 insertions(+), 25 deletions(-) diff --git a/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m b/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m index 52a0db0f..52c7f21b 100644 --- a/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m +++ b/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m @@ -36,22 +36,12 @@ #endif static NSString *const kNewAccessToken = @"new_access_token"; -static NSTimeInterval const kAccessTokenExpireTime = 442886100; -static NSTimeInterval const kIDTokenExpireTime = 442886118; -static NSTimeInterval const kNewAccessTokenExpireTime = 442886200; -static NSTimeInterval const kNewIDTokenExpireTime = 442886224; static NSTimeInterval const kTimeAccuracy = 10; @interface GIDGoogleUserTest : XCTestCase @end -@implementation GIDGoogleUserTest { - // Fake data used to generate the expiration date of the access token. - NSTimeInterval _accessTokenExpireTime; - - // Fake data used to generate the expiration date of the ID token. - NSTimeInterval _idTokenExpireTime; -} +@implementation GIDGoogleUserTest #pragma mark - Tests @@ -106,36 +96,41 @@ - (void)testLegacyCoding { #endif // TARGET_OS_IOS || TARGET_OS_MACCATALYST - (void)testUpdateAuthState { - NSString *idToken = [self idTokenWithExpireTime:kIDTokenExpireTime]; + NSTimeInterval accessTokenExpireTime = [NSDate timeIntervalSinceReferenceDate]; + NSTimeInterval idTokenExpireTime = [NSDate timeIntervalSinceReferenceDate] + 100; + + NSString *idToken = [self idTokenWithExpireTime:idTokenExpireTime]; OIDAuthState *authState = [OIDAuthState testInstanceWithIDToken:idToken accessToken:kAccessToken - accessTokenExpireTime:kAccessTokenExpireTime]; + accessTokenExpireTime:accessTokenExpireTime]; GIDGoogleUser *user = [[GIDGoogleUser alloc] initWithAuthState:authState profileData:nil]; XCTAssertEqualObjects(user.accessToken.tokenString, kAccessToken); XCTAssertEqualWithAccuracy([user.accessToken.expirationDate timeIntervalSinceReferenceDate], - kAccessTokenExpireTime, kTimeAccuracy); + accessTokenExpireTime, kTimeAccuracy); XCTAssertEqualObjects(user.idToken.tokenString, idToken); XCTAssertEqualWithAccuracy([user.idToken.expirationDate timeIntervalSinceReferenceDate], - kIDTokenExpireTime, kTimeAccuracy); + idTokenExpireTime, kTimeAccuracy); XCTAssertNil(user.profile); - NSString *idTokenNew = [self idTokenWithExpireTime:kNewIDTokenExpireTime]; - OIDAuthState *newAuthState = [OIDAuthState testInstanceWithIDToken:idTokenNew - accessToken:kNewAccessToken - accessTokenExpireTime:kNewAccessTokenExpireTime]; - GIDProfileData *newProfileData = [GIDProfileData testInstance]; + NSTimeInterval updatedAccessTokenExpireTime = [NSDate timeIntervalSinceReferenceDate] + 200; + NSTimeInterval updatedIDTokenExpireTime = [NSDate timeIntervalSinceReferenceDate] + 300; + NSString *updatedIDToken = [self idTokenWithExpireTime:updatedIDTokenExpireTime]; + OIDAuthState *updatedAuthState = [OIDAuthState testInstanceWithIDToken:updatedIDToken + accessToken:kNewAccessToken + accessTokenExpireTime:updatedAccessTokenExpireTime]; + GIDProfileData *updatedProfileData = [GIDProfileData testInstance]; - [user updateAuthState:newAuthState profileData:newProfileData]; + [user updateAuthState:updatedAuthState profileData:updatedProfileData]; XCTAssertEqualObjects(user.accessToken.tokenString, kNewAccessToken); XCTAssertEqualWithAccuracy([user.accessToken.expirationDate timeIntervalSinceReferenceDate], - kNewAccessTokenExpireTime, kTimeAccuracy); - XCTAssertEqualObjects(user.idToken.tokenString, idTokenNew); + updatedAccessTokenExpireTime, kTimeAccuracy); + XCTAssertEqualObjects(user.idToken.tokenString, updatedIDToken); XCTAssertEqualWithAccuracy([user.idToken.expirationDate timeIntervalSinceReferenceDate], - kNewIDTokenExpireTime, kTimeAccuracy); - XCTAssertEqual(user.profile, newProfileData); + updatedIDTokenExpireTime, kTimeAccuracy); + XCTAssertEqual(user.profile, updatedProfileData); } #pragma mark - Helpers From 329713b63f8b44eab5e592c216f62a580fcda6e9 Mon Sep 17 00:00:00 2001 From: pinlu Date: Sat, 17 Sep 2022 10:44:27 -0700 Subject: [PATCH 6/6] Improve readability in tests. --- GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m b/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m index 52c7f21b..2ff9e567 100644 --- a/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m +++ b/GoogleSignIn/Tests/Unit/GIDGoogleUserTest.m @@ -37,6 +37,9 @@ static NSString *const kNewAccessToken = @"new_access_token"; static NSTimeInterval const kTimeAccuracy = 10; +// The difference between times. +// It should be larger than kTimeAccuracy which is used in the method `XCTAssertEqualWithAccuracy`. +static NSTimeInterval const kTimeIncrement = 100; @interface GIDGoogleUserTest : XCTestCase @end @@ -97,7 +100,7 @@ - (void)testLegacyCoding { - (void)testUpdateAuthState { NSTimeInterval accessTokenExpireTime = [NSDate timeIntervalSinceReferenceDate]; - NSTimeInterval idTokenExpireTime = [NSDate timeIntervalSinceReferenceDate] + 100; + NSTimeInterval idTokenExpireTime = accessTokenExpireTime + kTimeIncrement; NSString *idToken = [self idTokenWithExpireTime:idTokenExpireTime]; OIDAuthState *authState = [OIDAuthState testInstanceWithIDToken:idToken @@ -106,16 +109,8 @@ - (void)testUpdateAuthState { GIDGoogleUser *user = [[GIDGoogleUser alloc] initWithAuthState:authState profileData:nil]; - XCTAssertEqualObjects(user.accessToken.tokenString, kAccessToken); - XCTAssertEqualWithAccuracy([user.accessToken.expirationDate timeIntervalSinceReferenceDate], - accessTokenExpireTime, kTimeAccuracy); - XCTAssertEqualObjects(user.idToken.tokenString, idToken); - XCTAssertEqualWithAccuracy([user.idToken.expirationDate timeIntervalSinceReferenceDate], - idTokenExpireTime, kTimeAccuracy); - XCTAssertNil(user.profile); - - NSTimeInterval updatedAccessTokenExpireTime = [NSDate timeIntervalSinceReferenceDate] + 200; - NSTimeInterval updatedIDTokenExpireTime = [NSDate timeIntervalSinceReferenceDate] + 300; + NSTimeInterval updatedAccessTokenExpireTime = idTokenExpireTime + kTimeIncrement; + NSTimeInterval updatedIDTokenExpireTime = updatedAccessTokenExpireTime + kTimeIncrement; NSString *updatedIDToken = [self idTokenWithExpireTime:updatedIDTokenExpireTime]; OIDAuthState *updatedAuthState = [OIDAuthState testInstanceWithIDToken:updatedIDToken accessToken:kNewAccessToken