Files
firebase-ios-sdk/Example/Auth/Tests/FIRAuthAppCredentialTests.m
T
2017-05-15 12:27:07 -07:00

68 lines
2.2 KiB
Objective-C

/*
* Copyright 2017 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 <XCTest/XCTest.h>
#import "FIRAuthAppCredential.h"
NS_ASSUME_NONNULL_BEGIN
/** @var kReceipt
@brief The fake receipt value for testing.
*/
static NSString *const kReceipt = @"RECEIPT";
/** @var kSecret
@brief The fake secret value for testing.
*/
static NSString *const kSecret = @"SECRET";
/** @class FIRAuthAppCredentialTests
@brief Unit tests for @c FIRAuthAppCredential .
*/
@interface FIRAuthAppCredentialTests : XCTestCase
@end
@implementation FIRAuthAppCredentialTests
/** @fn testInitializer
@brief Tests the initializer of the class.
*/
- (void)testInitializer {
FIRAuthAppCredential *credential = [[FIRAuthAppCredential alloc] initWithReceipt:kReceipt
secret:kSecret];
XCTAssertEqualObjects(credential.receipt, kReceipt);
XCTAssertEqualObjects(credential.secret, kSecret);
}
/** @fn testSecureCoding
@brief Tests the implementation of NSSecureCoding protocol.
*/
- (void)testSecureCoding {
XCTAssertTrue([FIRAuthAppCredential supportsSecureCoding]);
FIRAuthAppCredential *credential = [[FIRAuthAppCredential alloc] initWithReceipt:kReceipt
secret:kSecret];
NSData *data = [NSKeyedArchiver archivedDataWithRootObject:credential];
XCTAssertNotNil(data);
FIRAuthAppCredential *otherCredential = [NSKeyedUnarchiver unarchiveObjectWithData:data];
XCTAssertEqualObjects(otherCredential.receipt, kReceipt);
XCTAssertEqualObjects(otherCredential.secret, kSecret);
}
@end
NS_ASSUME_NONNULL_END