Files
firebase-ios-sdk/GoogleUtilities/Example/Tests/Environment/GULHeartbeatDateStorageTest.m
T
Vinay Guthal be17ade458 add heartbeat feature for ios sdks (#4098)
* add heartbeat feature

* fix client logtype

* make class functions

* add subspec changes

* remove test file

* add heartbeat  tests

* use FileDataStorage instead of Storage

* add style

* use file data storage instead of storage

* fix test location

* add tests

* address comments

* update storage heartbeat with the new api

* update format

* update formatting and use correct enums

* rename

* update storage

* fix heartbeat

* update heartbeat tests

* fix styling

* Revert change

* heartbeat storage

* add comments

* update storage

* address comments

* add comments

* address comments

* fix style

* add style

* add style

* move heartbeat date storage

* move to environment

* update tests

* add tests

* small change

* add google utilities

* delete the header file

* update tests

* remove headers

* fix comment

* gul heartbeat date storage

* Update versions for heartbeat PR (#4311)

* update podfile

* Fix Firestore build under CMake

GoogleUtilities must now build SecureCoding
2019-11-14 15:22:20 -05:00

57 lines
2.0 KiB
Objective-C

/*
* Copyright 2019 Google
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#import <GoogleUtilities/GULHeartbeatDateStorage.h>
#import <XCTest/XCTest.h>
@interface GULHeartbeatDateStorageTest : XCTestCase
@property(nonatomic) NSURL *fileURL;
@property(nonatomic) GULHeartbeatDateStorage *storage;
@end
@implementation GULHeartbeatDateStorageTest
- (void)setUp {
NSString *documentsPath = [NSSearchPathForDirectoriesInDomains(
NSApplicationSupportDirectory, NSUserDomainMask, YES) firstObject];
XCTAssertNotNil(documentsPath);
NSURL *documentsURL = [NSURL fileURLWithPath:documentsPath];
NSError *error;
if (![documentsURL checkResourceIsReachableAndReturnError:&error]) {
XCTAssert([[NSFileManager defaultManager] createDirectoryAtURL:documentsURL
withIntermediateDirectories:YES
attributes:nil
error:&error],
@"Error: %@", error);
}
self.storage = [[GULHeartbeatDateStorage alloc] initWithFileName:@"GULStorageHeartbeatTest"];
}
- (void)tearDown {
[[NSFileManager defaultManager] removeItemAtURL:[self.storage fileURL] error:nil];
self.storage = nil;
}
- (void)testHeartbeatDateForTag {
NSDate *now = [NSDate date];
[self.storage setHearbeatDate:now forTag:@"fire-iid"];
XCTAssertEqual([now timeIntervalSinceReferenceDate],
[[self.storage heartbeatDateForTag:@"fire-iid"] timeIntervalSinceReferenceDate]);
}
@end