3333#import " Firebase/InstanceID/NSError+FIRInstanceID.h"
3434
3535#import < FirebaseCore/FIRAppInternal.h>
36+ #import < GoogleUtilities/GULHeartbeatDateStorage.h>
3637
3738static NSString *kDeviceID = @" fakeDeviceID" ;
3839static NSString *kSecretToken = @" fakeSecretToken" ;
@@ -83,6 +84,11 @@ - (void)setUp {
8384 _keyPair =
8485 [[FIRInstanceIDKeychain sharedInstance ] generateKeyPairWithPrivateTag: kPrivateKeyPairTag
8586 publicTag: kPublicKeyPairTag ];
87+
88+ NSString *const kHeartbeatStorageFile = @" HEARTBEAT_INFO_STORAGE" ;
89+ GULHeartbeatDateStorage *dataStorage =
90+ [[GULHeartbeatDateStorage alloc ] initWithFileName: kHeartbeatStorageFile ];
91+ [[NSFileManager defaultManager ] removeItemAtURL: [dataStorage fileURL ] error: nil ];
8692}
8793
8894- (void )tearDown {
@@ -319,7 +325,7 @@ - (void)testHTTPAuthHeaderGenerationFromCheckin {
319325 XCTAssertEqualObjects (generatedHeader, expectedHeader);
320326}
321327
322- - (void )testTokenFetchOperationFirebaseUserAgentHeader {
328+ - (void )testTokenFetchOperationFirebaseUserAgentAndHeartbeatHeader {
323329 XCTestExpectation *completionExpectation =
324330 [self expectationWithDescription: @" completionExpectation" ];
325331
@@ -336,6 +342,8 @@ - (void)testTokenFetchOperationFirebaseUserAgentHeader {
336342 ^(NSURLRequest *request, FIRInstanceIDURLRequestTestResponseBlock response) {
337343 NSString *userAgentValue = request.allHTTPHeaderFields [kFIRInstanceIDFirebaseUserAgentKey ];
338344 XCTAssertEqualObjects (userAgentValue, [FIRApp firebaseUserAgent ]);
345+ NSString *heartBeatCode = request.allHTTPHeaderFields [kFIRInstanceIDFirebaseHeartbeatKey ];
346+ XCTAssertEqualObjects (heartBeatCode, @" 3" );
339347
340348 // Return a response with Error=RST
341349 NSData *responseBody = [self dataForFetchRequest: request returnValidToken: NO ];
0 commit comments