From 62e4fb6427d2e85b1ad966b25e24c03558110ee1 Mon Sep 17 00:00:00 2001 From: Yvonne Cheng Date: Wed, 3 Aug 2022 16:53:39 -0700 Subject: [PATCH 01/23] Add api addtion for SIWA and add Function for Unit test --- .ruby-version | 2 +- .../AuthProvider/OAuth/FIROAuthCredential.m | 19 ++ .../OAuth/FIROAuthCredential_Internal.h | 8 + .../AuthProvider/OAuth/FIROAuthProvider.m | 14 ++ .../Public/FirebaseAuth/FIROAuthCredential.h | 5 + .../Public/FirebaseAuth/FIROAuthProvider.h | 17 ++ FirebaseAuth/Tests/Sample/Application.plist | 0 .../AuthSample.xcodeproj/project.pbxproj | 218 +++++++++++++++++- .../xcschemes/AuthSample.xcscheme | 2 +- .../xcschemes/Auth_ApiTests.xcscheme | 11 +- .../xcschemes/Auth_E2eTests.xcscheme | 11 +- .../xcschemes/SwiftApiTests.xcscheme | 11 +- FirebaseAuth/Tests/Sample/Podfile | 2 +- .../Tests/Sample/Sample/GoogleAuthProvider.m | 76 +----- .../Sample/Sample/MainViewController+OAuth.m | 4 +- .../Tests/Unit/FIROAuthProviderTests.m | 19 ++ 16 files changed, 311 insertions(+), 108 deletions(-) create mode 100644 FirebaseAuth/Tests/Sample/Application.plist diff --git a/.ruby-version b/.ruby-version index fa376edcab7..ef538c28109 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -ruby-2.7 +3.1.2 diff --git a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m index 3c88a26b294..327a521d961 100644 --- a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m +++ b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m @@ -57,6 +57,25 @@ - (instancetype)initWithProviderID:(NSString *)providerID return self; } +- (instancetype)initWithProviderID:(NSString *)providerID + IDToken:(nullable NSString *)IDToken + rawNonce:(nullable NSString *)rawNonce + accessToken:(nullable NSString *)accessToken + secret:(nullable NSString *)secret + displayName:(nullable NSString *)displayName + pendingToken:(nullable NSString *)pendingToken { + self = [super initWithProvider:providerID]; + if (self) { + _IDToken = IDToken; + _rawNonce = rawNonce; + _accessToken = accessToken; + _pendingToken = pendingToken; + _secret = secret; + _displayName = displayName; + } + return self; +} + - (instancetype)initWithProviderID:(NSString *)providerID sessionID:(NSString *)sessionID OAuthResponseURLString:(NSString *)OAuthResponseURLString { diff --git a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential_Internal.h b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential_Internal.h index 9f076016530..29990275d20 100644 --- a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential_Internal.h +++ b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential_Internal.h @@ -57,6 +57,14 @@ NS_ASSUME_NONNULL_BEGIN secret:(nullable NSString *)secret pendingToken:(nullable NSString *)pendingToken NS_DESIGNATED_INITIALIZER; +- (instancetype)initWithProviderID:(NSString *)providerID + IDToken:(nullable NSString *)IDToken + rawNonce:(nullable NSString *)rawNonce + accessToken:(nullable NSString *)accessToken + secret:(nullable NSString *)secret + displayName:(nullable NSString *)displayName + pendingToken:(nullable NSString *)pendingToken NS_DESIGNATED_INITIALIZER; + /** @fn initWithProviderId:sessionID:OAuthResponseURLString: @brief Intitializer which takes a sessionID and an OAuthResponseURLString. @param providerID The provider ID associated with the credential being created. diff --git a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthProvider.m b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthProvider.m index 80cd2adef66..6af5d260d2c 100644 --- a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthProvider.m +++ b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthProvider.m @@ -124,6 +124,20 @@ + (FIROAuthCredential *)credentialWithProviderID:(NSString *)providerID pendingToken:nil]; } ++ (FIROAuthCredential *)credentialWithProviderID:(NSString *)providerID + IDToken:(NSString *)IDToken + rawNonce:(nullable NSString *)rawNonce + accessToken:(nullable NSString *)accessToken + displayName:(nonnull NSString *)displayName{ + return [[FIROAuthCredential alloc] initWithProviderID:providerID + IDToken:IDToken + rawNonce:rawNonce + accessToken:accessToken + secret:nil + displayName:displayName + pendingToken:nil]; +} + + (instancetype)providerWithProviderID:(NSString *)providerID { return [[self alloc] initWithProviderID:providerID auth:[FIRAuth auth]]; } diff --git a/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthCredential.h b/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthCredential.h index 94abe4f22b4..24de8742123 100644 --- a/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthCredential.h +++ b/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthCredential.h @@ -43,6 +43,11 @@ NS_SWIFT_NAME(OAuthCredential) */ @property(nonatomic, readonly, nullable) NSString *secret; +/** @property displayName + @brief The displayName associated with this credential. + */ +@property(nonatomic, readonly, nullable) NSString *displayName; + /** @fn init @brief This class is not supposed to be instantiated directly. */ diff --git a/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthProvider.h b/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthProvider.h index 170c19e5219..f9a34a47e7f 100644 --- a/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthProvider.h +++ b/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthProvider.h @@ -113,6 +113,23 @@ NS_SWIFT_NAME(OAuthProvider) + (FIROAuthCredential *)credentialWithProviderID:(NSString *)providerID IDToken:(NSString *)IDToken rawNonce:(nullable NSString *)rawNonce; +/** @fn credentialWithProviderID:IDToken:rawNonce:accessToken: + @brief Creates an `AuthCredential` for that OAuth 2 provider identified by provider ID, ID + token, raw nonce, and access token. + + @param providerID The provider ID associated with the Auth credential being created. + @param IDToken The IDToken associated with the Auth credential being created. + @param rawNonce The raw nonce associated with the Auth credential being created. + @param accessToken The access token associated with the Auth credential be created, if + available. + @param displayName The displayName associated with the Auth credential being created. + @return A `AuthCredential` for the specified provider ID, ID token and access token. + */ ++ (FIROAuthCredential *)credentialWithProviderID:(NSString *)providerID + IDToken:(NSString *)IDToken + rawNonce:(nullable NSString *)rawNonce + accessToken:(nullable NSString *)accessToken + displayName:(NSString *)displayName; /** @fn init @brief This class is not meant to be initialized. diff --git a/FirebaseAuth/Tests/Sample/Application.plist b/FirebaseAuth/Tests/Sample/Application.plist new file mode 100644 index 00000000000..e69de29bb2d diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj index a126512cae3..e4e039306ca 100644 --- a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj +++ b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj @@ -3,11 +3,15 @@ archiveVersion = 1; classes = { }; - objectVersion = 50; + objectVersion = 51; objects = { /* Begin PBXBuildFile section */ + 2D9368346D8FA940FA2BD392 /* Pods_Auth_E2eTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1B9909B9159B2191A05906FA /* Pods_Auth_E2eTests.framework */; }; 400283EA23EA254B0006A298 /* MainViewController+MultiFactor.m in Sources */ = {isa = PBXBuildFile; fileRef = 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */; }; + 5EDCF9BC38AB1472B862D79B /* Pods_Auth_ApiTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 19E444FF7D3AE620B0F4293A /* Pods_Auth_ApiTests.framework */; }; + 731F70C06E1001F8313E21BE /* Pods_AuthSample.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E782F49011F2F27C9411D056 /* Pods_AuthSample.framework */; }; + 7350C60D85615F0F8199BCAA /* Pods_SwiftApiTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B5E2551BF842F02DF1A2937B /* Pods_SwiftApiTests.framework */; }; DE1865AC245B879B00F8AD70 /* TestsBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865AB245B879B00F8AD70 /* TestsBase.swift */; }; DE1865AE245B8A1400F8AD70 /* AnonymousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */; }; DE1865B2245C7A2B00F8AD70 /* EmailPasswordTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */; }; @@ -86,8 +90,18 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + 0470AED2ED2D120262F08CCB /* Pods-SwiftApiTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SwiftApiTests.debug.xcconfig"; path = "Target Support Files/Pods-SwiftApiTests/Pods-SwiftApiTests.debug.xcconfig"; sourceTree = ""; }; + 19E444FF7D3AE620B0F4293A /* Pods_Auth_ApiTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Auth_ApiTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 1A7717341987080791B5A4C0 /* Pods-Auth_ApiTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Auth_ApiTests.debug.xcconfig"; path = "Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests.debug.xcconfig"; sourceTree = ""; }; + 1B9909B9159B2191A05906FA /* Pods_Auth_E2eTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Auth_E2eTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 2FF8EE500CF78004FC65C179 /* Pods-AuthSample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AuthSample.debug.xcconfig"; path = "Target Support Files/Pods-AuthSample/Pods-AuthSample.debug.xcconfig"; sourceTree = ""; }; 400283E823EA254A0006A298 /* MainViewController+MultiFactor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+MultiFactor.h"; sourceTree = ""; }; 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+MultiFactor.m"; sourceTree = ""; }; + 9E4DB36B019BA019C9EA4229 /* Pods-Auth_E2eTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Auth_E2eTests.debug.xcconfig"; path = "Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests.debug.xcconfig"; sourceTree = ""; }; + A1DE7ED770F906C5B9750C49 /* Pods-AuthSample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AuthSample.release.xcconfig"; path = "Target Support Files/Pods-AuthSample/Pods-AuthSample.release.xcconfig"; sourceTree = ""; }; + AF3816DA4B5B0385038F24E3 /* Pods-Auth_ApiTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Auth_ApiTests.release.xcconfig"; path = "Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests.release.xcconfig"; sourceTree = ""; }; + B5E2551BF842F02DF1A2937B /* Pods_SwiftApiTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_SwiftApiTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + B8F193D66088DE1B34480177 /* Pods-Auth_E2eTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Auth_E2eTests.release.xcconfig"; path = "Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests.release.xcconfig"; sourceTree = ""; }; DE1865AB245B879B00F8AD70 /* TestsBase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TestsBase.swift; sourceTree = ""; }; DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnonymousTests.swift; sourceTree = ""; }; DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmailPasswordTests.swift; sourceTree = ""; }; @@ -182,6 +196,8 @@ DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthE2eTests.m; sourceTree = ""; }; DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthE2eTestsBase.m; sourceTree = ""; }; DEF68E942799B9970064CC92 /* SwiftAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftAPI.swift; sourceTree = ""; }; + DFA27C5857B4273250BE0B77 /* Pods-SwiftApiTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SwiftApiTests.release.xcconfig"; path = "Target Support Files/Pods-SwiftApiTests/Pods-SwiftApiTests.release.xcconfig"; sourceTree = ""; }; + E782F49011F2F27C9411D056 /* Pods_AuthSample.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_AuthSample.framework; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -189,6 +205,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 731F70C06E1001F8313E21BE /* Pods_AuthSample.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -196,6 +213,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 5EDCF9BC38AB1472B862D79B /* Pods_Auth_ApiTests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -203,6 +221,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 2D9368346D8FA940FA2BD392 /* Pods_Auth_E2eTests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -210,12 +229,39 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 7350C60D85615F0F8199BCAA /* Pods_SwiftApiTests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + C4C05E1CFDE4CC7F68A7B4F1 /* Frameworks */ = { + isa = PBXGroup; + children = ( + E782F49011F2F27C9411D056 /* Pods_AuthSample.framework */, + 19E444FF7D3AE620B0F4293A /* Pods_Auth_ApiTests.framework */, + 1B9909B9159B2191A05906FA /* Pods_Auth_E2eTests.framework */, + B5E2551BF842F02DF1A2937B /* Pods_SwiftApiTests.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; + C8C0A17357FAC82788BE1349 /* Pods */ = { + isa = PBXGroup; + children = ( + 2FF8EE500CF78004FC65C179 /* Pods-AuthSample.debug.xcconfig */, + A1DE7ED770F906C5B9750C49 /* Pods-AuthSample.release.xcconfig */, + 1A7717341987080791B5A4C0 /* Pods-Auth_ApiTests.debug.xcconfig */, + AF3816DA4B5B0385038F24E3 /* Pods-Auth_ApiTests.release.xcconfig */, + 9E4DB36B019BA019C9EA4229 /* Pods-Auth_E2eTests.debug.xcconfig */, + B8F193D66088DE1B34480177 /* Pods-Auth_E2eTests.release.xcconfig */, + 0470AED2ED2D120262F08CCB /* Pods-SwiftApiTests.debug.xcconfig */, + DFA27C5857B4273250BE0B77 /* Pods-SwiftApiTests.release.xcconfig */, + ); + path = Pods; + sourceTree = ""; + }; DE800AEB22A2F87E00AC9A23 = { isa = PBXGroup; children = ( @@ -224,6 +270,8 @@ DE800B9622A5BD1800AC9A23 /* E2eTests */, DEBEF6042450EA27005E1A8F /* SwiftApiTests */, DE800AF522A2F87E00AC9A23 /* Products */, + C8C0A17357FAC82788BE1349 /* Pods */, + C4C05E1CFDE4CC7F68A7B4F1 /* Frameworks */, ); sourceTree = ""; }; @@ -366,9 +414,11 @@ isa = PBXNativeTarget; buildConfigurationList = DE800B0A22A2F88000AC9A23 /* Build configuration list for PBXNativeTarget "AuthSample" */; buildPhases = ( + 6E443E69F97F9D8B522B6BD2 /* [CP] Check Pods Manifest.lock */, DE800AF022A2F87E00AC9A23 /* Sources */, DE800AF122A2F87E00AC9A23 /* Frameworks */, DE800AF222A2F87E00AC9A23 /* Resources */, + 3B56363253287110A0B8A8B7 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -383,9 +433,11 @@ isa = PBXNativeTarget; buildConfigurationList = DE800B7A22A5927C00AC9A23 /* Build configuration list for PBXNativeTarget "Auth_ApiTests" */; buildPhases = ( + 398665313C934F44F17AAD71 /* [CP] Check Pods Manifest.lock */, DE800B6D22A5927C00AC9A23 /* Sources */, DE800B6E22A5927C00AC9A23 /* Frameworks */, DE800B6F22A5927C00AC9A23 /* Resources */, + EBE4C98CFE4D95E43BEE3119 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -401,9 +453,11 @@ isa = PBXNativeTarget; buildConfigurationList = DE800B9C22A5BD1800AC9A23 /* Build configuration list for PBXNativeTarget "Auth_E2eTests" */; buildPhases = ( + EC843A773540DCA96200DC21 /* [CP] Check Pods Manifest.lock */, DE800B9122A5BD1800AC9A23 /* Sources */, DE800B9222A5BD1800AC9A23 /* Frameworks */, DE800B9322A5BD1800AC9A23 /* Resources */, + B62EC7DEFEC79BE35B83BF6F /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -419,6 +473,7 @@ isa = PBXNativeTarget; buildConfigurationList = DEBEF60A2450EA27005E1A8F /* Build configuration list for PBXNativeTarget "SwiftApiTests" */; buildPhases = ( + 5B47162ED76807737D484CD1 /* [CP] Check Pods Manifest.lock */, DEBEF5FF2450EA27005E1A8F /* Sources */, DEBEF6002450EA27005E1A8F /* Frameworks */, DEBEF6012450EA27005E1A8F /* Resources */, @@ -440,7 +495,7 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 1140; - LastUpgradeCheck = 1020; + LastUpgradeCheck = 1340; ORGANIZATIONNAME = Firebase; TargetAttributes = { DE800AF322A2F87E00AC9A23 = { @@ -521,6 +576,148 @@ }; /* End PBXResourcesBuildPhase section */ +/* Begin PBXShellScriptBuildPhase section */ + 398665313C934F44F17AAD71 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Auth_ApiTests-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + 3B56363253287110A0B8A8B7 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-AuthSample/Pods-AuthSample-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-AuthSample/Pods-AuthSample-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-AuthSample/Pods-AuthSample-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + 5B47162ED76807737D484CD1 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-SwiftApiTests-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + 6E443E69F97F9D8B522B6BD2 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-AuthSample-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + B62EC7DEFEC79BE35B83BF6F /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + EBE4C98CFE4D95E43BEE3119 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + EC843A773540DCA96200DC21 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Auth_E2eTests-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + /* Begin PBXSourcesBuildPhase section */ DE800AF022A2F87E00AC9A23 /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -642,6 +839,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -653,6 +851,7 @@ DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; + "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; GCC_C_LANGUAGE_STANDARD = gnu11; GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; @@ -701,6 +900,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -724,17 +924,20 @@ MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; SDKROOT = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; VALIDATE_PRODUCT = YES; }; name = Release; }; DE800B0B22A2F88000AC9A23 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 2FF8EE500CF78004FC65C179 /* Pods-AuthSample.debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Sample/Sample.entitlements; CODE_SIGN_STYLE = Automatic; + "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = ""; HEADER_SEARCH_PATHS = ( "$(inherited)", "${SRCROOT}/../../..", @@ -744,7 +947,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - PRODUCT_BUNDLE_IDENTIFIER = com.google.FirebaseExperimental1; + PRODUCT_BUNDLE_IDENTIFIER = com.firebase.auth1; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; @@ -754,6 +957,7 @@ }; DE800B0C22A2F88000AC9A23 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = A1DE7ED770F906C5B9750C49 /* Pods-AuthSample.release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; @@ -768,7 +972,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - PRODUCT_BUNDLE_IDENTIFIER = com.google.FirebaseExperimental1; + PRODUCT_BUNDLE_IDENTIFIER = com.firebase.auth1; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; @@ -777,6 +981,7 @@ }; DE800B7822A5927C00AC9A23 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 1A7717341987080791B5A4C0 /* Pods-Auth_ApiTests.debug.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CLANG_ENABLE_MODULES = YES; @@ -799,6 +1004,7 @@ }; DE800B7922A5927C00AC9A23 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = AF3816DA4B5B0385038F24E3 /* Pods-Auth_ApiTests.release.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CLANG_ENABLE_MODULES = YES; @@ -820,6 +1026,7 @@ }; DE800B9D22A5BD1800AC9A23 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 9E4DB36B019BA019C9EA4229 /* Pods-Auth_E2eTests.debug.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -838,6 +1045,7 @@ }; DE800B9E22A5BD1800AC9A23 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = B8F193D66088DE1B34480177 /* Pods-Auth_E2eTests.release.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -856,6 +1064,7 @@ }; DEBEF60B2450EA27005E1A8F /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 0470AED2ED2D120262F08CCB /* Pods-SwiftApiTests.debug.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; @@ -878,6 +1087,7 @@ }; DEBEF60C2450EA27005E1A8F /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = DFA27C5857B4273250BE0B77 /* Pods-SwiftApiTests.release.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CODE_SIGN_STYLE = Automatic; diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/AuthSample.xcscheme b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/AuthSample.xcscheme index adb5894e740..51a1848207c 100644 --- a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/AuthSample.xcscheme +++ b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/AuthSample.xcscheme @@ -1,6 +1,6 @@ - - - - diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_E2eTests.xcscheme b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_E2eTests.xcscheme index 8a72476098b..e168a7c0c44 100644 --- a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_E2eTests.xcscheme +++ b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_E2eTests.xcscheme @@ -1,6 +1,6 @@ - - - - diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/SwiftApiTests.xcscheme b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/SwiftApiTests.xcscheme index 5bbc32956aa..d0da96a31bd 100644 --- a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/SwiftApiTests.xcscheme +++ b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/SwiftApiTests.xcscheme @@ -1,6 +1,6 @@ - - - - diff --git a/FirebaseAuth/Tests/Sample/Podfile b/FirebaseAuth/Tests/Sample/Podfile index 9276c267616..ac49ec46fbe 100644 --- a/FirebaseAuth/Tests/Sample/Podfile +++ b/FirebaseAuth/Tests/Sample/Podfile @@ -16,7 +16,7 @@ target 'AuthSample' do pod 'FirebaseAuth', :path => '../../../', :testspecs => ['unit'] pod 'FirebaseInstallations', :path => '../../..' pod 'FBSDKLoginKit' - pod 'GoogleSignIn', '~> 5' + pod 'GoogleSignIn', '~> 6' pod 'GTMSessionFetcher/Core' target 'Auth_ApiTests' do diff --git a/FirebaseAuth/Tests/Sample/Sample/GoogleAuthProvider.m b/FirebaseAuth/Tests/Sample/Sample/GoogleAuthProvider.m index 6ca3aa68053..70632787919 100644 --- a/FirebaseAuth/Tests/Sample/Sample/GoogleAuthProvider.m +++ b/FirebaseAuth/Tests/Sample/Sample/GoogleAuthProvider.m @@ -22,62 +22,6 @@ #import #import #import -#import "ApplicationDelegate.h" - -/** @typedef GoogleSignInCallback - @brief The type of block invoked when a @c GIDGoogleUser object is ready or an error has - occurred. - @param user The Google user if any. - @param error The error which occurred, if any. - */ -typedef void (^GoogleSignInCallback)(GIDGoogleUser *user, NSError *error); - -/** @class GoogleAuthDelegate - @brief The designated delegate class for Google Sign-In. - */ -@interface GoogleAuthDelegate : NSObject - -/** @fn initWithPresentingViewController:callback: - @brief Initializes the new instance with the callback. - @param presentingViewController The view controller to present the UI. - @param callback A block which is invoked when the sign-in flow finishes. Invoked asynchronously - on an unspecified thread in the future. - */ -- (instancetype)initWithPresentingViewController:(UIViewController *)presentingViewController - callback:(nullable GoogleSignInCallback)callback; - -@end - -@implementation GoogleAuthDelegate { - UIViewController *_presentingViewController; - GoogleSignInCallback _callback; -} - -- (instancetype)initWithPresentingViewController:(UIViewController *)presentingViewController - callback:(nullable GoogleSignInCallback)callback { - self = [super init]; - if (self) { - _presentingViewController = presentingViewController; - _callback = callback; - } - return self; -} - -- (void)signIn:(GIDSignIn *)signIn - didSignInForUser:(GIDGoogleUser *)user - withError:(NSError *)error { - GoogleSignInCallback callback = _callback; - _callback = nil; - if (callback) { - callback(user, error); - } -} - -- (BOOL)handleOpenURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication { - return [[GIDSignIn sharedInstance] handleURL:url]; -} - -@end @implementation GoogleAuthProvider @@ -85,12 +29,11 @@ - (void)getAuthCredentialWithPresentingViewController:(UIViewController *)viewCo callback:(AuthCredentialCallback)callback { [self signOut]; - // The delegate needs to be retained. - __block GoogleAuthDelegate *delegate = [[GoogleAuthDelegate alloc] - initWithPresentingViewController:viewController - callback:^(GIDGoogleUser *user, NSError *error) { - [ApplicationDelegate setOpenURLDelegate:nil]; - delegate = nil; + GIDSignIn *signIn = GIDSignIn.sharedInstance; + GIDConfiguration *config = [[GIDConfiguration alloc] initWithClientID:[self googleClientID]]; + [signIn signInWithConfiguration:config + presentingViewController:viewController + callback:^(GIDGoogleUser * _Nullable user, NSError * _Nullable error) { if (error) { callback(nil, error); return; @@ -100,17 +43,10 @@ - (void)getAuthCredentialWithPresentingViewController:(UIViewController *)viewCo accessToken:auth.accessToken]; callback(credential, error); }]; - GIDSignIn *signIn = [GIDSignIn sharedInstance]; - signIn.clientID = [self googleClientID]; - signIn.shouldFetchBasicProfile = YES; - signIn.delegate = delegate; - signIn.presentingViewController = viewController; - [ApplicationDelegate setOpenURLDelegate:delegate]; - [signIn signIn]; } - (void)signOut { - [[GIDSignIn sharedInstance] signOut]; + [GIDSignIn.sharedInstance signOut]; } - (NSString *)googleClientID { diff --git a/FirebaseAuth/Tests/Sample/Sample/MainViewController+OAuth.m b/FirebaseAuth/Tests/Sample/Sample/MainViewController+OAuth.m index 7043373913a..c65010c93ee 100644 --- a/FirebaseAuth/Tests/Sample/Sample/MainViewController+OAuth.m +++ b/FirebaseAuth/Tests/Sample/Sample/MainViewController+OAuth.m @@ -410,10 +410,12 @@ - (void)reauthenticateWithApple { - (void)authorizationController:(ASAuthorizationController *)controller didCompleteWithAuthorization:(ASAuthorization *)authorization API_AVAILABLE(ios(13.0)) { ASAuthorizationAppleIDCredential* appleIDCredential = authorization.credential; NSString *IDToken = [NSString stringWithUTF8String:[appleIDCredential.identityToken bytes]]; + NSString *displayName = [appleIDCredential.fullName.givenName stringByAppendingFormat:@" %@", appleIDCredential.fullName.familyName]; FIROAuthCredential *credential = [FIROAuthProvider credentialWithProviderID:@"apple.com" IDToken:IDToken rawNonce:self.appleRawNonce - accessToken:nil]; + accessToken:nil + displayName:displayName]; if ([appleIDCredential.state isEqualToString:@"signIn"]) { [FIRAuth.auth signInWithCredential:credential completion:^(FIRAuthDataResult * _Nullable authResult, NSError * _Nullable error) { diff --git a/FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m b/FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m index 59e7da9b70a..dc14d88ad82 100644 --- a/FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m +++ b/FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m @@ -67,6 +67,11 @@ */ static NSString *const kFakeProviderID = @"fakeProviderID"; +/** @var kFakeProviderID + @brief A fake provider ID for testing. + */ +static NSString *const kFakeDisplayName = @"fakeDisplayName"; + /** @var kFakeAPIKey @brief A fake API key. */ @@ -238,6 +243,20 @@ - (void)testObtainingOAuthCredentialNoIDToken { XCTAssertNil(OAuthCredential.IDToken); } +/** @fn testObtainingOAuthCredentialNoIDToken + @brief Tests the correct creation of an OAuthCredential without an IDToken. + */ +- (void)testObtainingOAuthCredentialWithDisplayName { + FIRAuthCredential *credential = [FIROAuthProvider credentialWithProviderID:kFakeProviderID + accessToken:kFakeAccessToken]; + XCTAssertTrue([credential isKindOfClass:[FIROAuthCredential class]]); + FIROAuthCredential *OAuthCredential = (FIROAuthCredential *)credential; + XCTAssertEqualObjects(OAuthCredential.accessToken, kFakeAccessToken); + XCTAssertEqualObjects(OAuthCredential.provider, kFakeProviderID); + XCTAssertEqualObjects(OAuthCredential.displayName,kFakeDisplayName); + XCTAssertNil(OAuthCredential.IDToken); +} + /** @fn testObtainingOAuthCredentialWithIDToken @brief Tests the correct creation of an OAuthCredential with an IDToken */ From 47fd1b5ea28e956ae2d07306fc70c9f79441904b Mon Sep 17 00:00:00 2001 From: Yvonne Cheng Date: Thu, 4 Aug 2022 15:20:02 -0700 Subject: [PATCH 02/23] Adding Unit test for apple signIn flow in FIROAuthProviderTests and FIRAuthTest --- .../AuthProvider/OAuth/FIROAuthCredential.m | 1 + .../Backend/RPC/FIRVerifyAssertionRequest.h | 5 + FirebaseAuth/Tests/Unit/FIRAuthTests.m | 142 ++++++++++++++++++ .../Tests/Unit/FIROAuthProviderTests.m | 8 +- 4 files changed, 152 insertions(+), 4 deletions(-) diff --git a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m index 327a521d961..abddd59084a 100644 --- a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m +++ b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m @@ -113,6 +113,7 @@ - (void)prepareVerifyAssertionRequest:(FIRVerifyAssertionRequest *)request { request.sessionID = _sessionID; request.providerOAuthTokenSecret = _secret; request.pendingToken = _pendingToken; + request.displayName = _displayName; } #pragma mark - NSSecureCoding diff --git a/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.h b/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.h index 0a1aa370b78..5a1a3a7497a 100644 --- a/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.h +++ b/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.h @@ -96,6 +96,11 @@ NS_ASSUME_NONNULL_BEGIN */ @property(nonatomic, assign) BOOL autoCreate; +/** @property displayName + @brief A displayName linked to its provider + */ +@property(nonatomic, copy, nullable) NSString *displayName; + /** @fn initWithEndpoint:requestConfiguration: @brief Please use initWithProviderID:requestConfifuration instead. */ diff --git a/FirebaseAuth/Tests/Unit/FIRAuthTests.m b/FirebaseAuth/Tests/Unit/FIRAuthTests.m index 989654b5052..a46717b41c4 100644 --- a/FirebaseAuth/Tests/Unit/FIRAuthTests.m +++ b/FirebaseAuth/Tests/Unit/FIRAuthTests.m @@ -160,6 +160,36 @@ */ static NSString *const kGoogleIDToken = @"GOOGLE_ID_TOKEN"; +/** @var FIRAppleAuthProviderID + @brief The provider ID for Apple Sign-In. + */ +NSString *const FIRAppleAuthProviderID = @"apple.com"; + +/** @var kAppleUD + @brief The fake user ID under Apple Sign-In. + */ +static NSString *const kAppleID = @"APPLE_ID"; + +/** @var kAppleEmail + @brief The fake user email under Apple Sign-In. + */ +static NSString *const kAppleEmail = @"user@icloud.com"; + +/** @var kAppleDisplayName + @brief The fake user display name under Apple Sign-In. + */ +static NSString *const kAppleDisplayName = @"Apple Doe"; + +/** @var kAppleAccessToken + @brief The fake access token from Apple Sign-In. + */ +static NSString *const kAppleAccessToken = @"Apple_ACCESS_TOKEN"; + +/** @var kAppleIDToken + @brief The fake ID token from Apple Sign-In. + */ +static NSString *const kAppleIDToken = @"APPLE_ID_TOKEN"; + /** @var kCustomToken @brief The fake custom token to sign in. */ @@ -321,6 +351,23 @@ + (NSDictionary *)googleProfile { return kGoogleProfile; } +/** @fn appleProfile + @brief The fake user profile under additional user data in @c FIRVerifyAssertionResponse. + */ ++ (NSDictionary *)appleProfile { + static NSDictionary *kAppleProfile = nil; + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + kAppleProfile = @{ + @"iss" : @"https://accounts.apple.com\\", + @"email" : kAppleEmail, + @"given_name" : @"User", + @"family_name" : @"Doe" + }; + }); + return kAppleProfile; +} + - (void)setUp { [super setUp]; @@ -1374,6 +1421,54 @@ - (void)testSignInWithGoogleCredentialFailure { OCMVerifyAll(_mockBackend); } +/** @fn testSignInWithAppleCredentialSuccess + @brief Tests the flow of a successful @c signInWithCredential:completion: call + with an Apple Sign-In credential. + */ +- (void)testSignInWithAppleCredentialSuccess { + OCMExpect([_mockBackend verifyAssertion:[OCMArg any] callback:[OCMArg any]]) + .andCallBlock2(^(FIRVerifyAssertionRequest *_Nullable request, + FIRVerifyAssertionResponseCallback callback) { + XCTAssertEqualObjects(request.APIKey, kAPIKey); + XCTAssertEqualObjects(request.providerID, FIRAppleAuthProviderID); + XCTAssertEqualObjects(request.providerIDToken, kAppleIDToken); + XCTAssertEqualObjects(request.providerAccessToken, kAppleAccessToken); + XCTAssertTrue(request.returnSecureToken); + dispatch_async(FIRAuthGlobalWorkQueue(), ^() { + id mockVerifyAssertionResponse = OCMClassMock([FIRVerifyAssertionResponse class]); + OCMStub([mockVerifyAssertionResponse federatedID]).andReturn(kAppleID); + OCMStub([mockVerifyAssertionResponse providerID]).andReturn(FIRAppleAuthProviderID); + OCMStub([mockVerifyAssertionResponse localID]).andReturn(kLocalID); + OCMStub([mockVerifyAssertionResponse displayName]).andReturn(kAppleDisplayName); + OCMStub([mockVerifyAssertionResponse profile]).andReturn([[self class] appleProfile]); + OCMStub([mockVerifyAssertionResponse username]).andReturn(kDisplayName); + [self stubTokensWithMockResponse:mockVerifyAssertionResponse]; + callback(mockVerifyAssertionResponse, nil); + }); + }); + [self expectGetAccountInfoApple]; + XCTestExpectation *expectation = [self expectationWithDescription:@"callback"]; + [[FIRAuth auth] signOut:NULL]; + FIRAuthCredential *appleCredential = + [FIROAuthProvider credentialWithProviderID:FIRAppleAuthProviderID IDToken:kAppleIDToken rawNonce:nil accessToken:kAppleAccessToken displayName:kAppleDisplayName]; + [[FIRAuth auth] + signInWithCredential:appleCredential + completion:^(FIRAuthDataResult *_Nullable authResult, NSError *_Nullable error) { + XCTAssertTrue([NSThread isMainThread]); + [self assertUserApple:authResult.user]; + XCTAssertEqualObjects(authResult.additionalUserInfo.profile, + [[self class] appleProfile]); + XCTAssertEqualObjects(authResult.additionalUserInfo.username, kDisplayName); + XCTAssertEqualObjects(authResult.additionalUserInfo.providerID, + FIRAppleAuthProviderID); + XCTAssertNil(error); + [expectation fulfill]; + }]; + [self waitForExpectationsWithTimeout:kExpectationTimeout handler:nil]; + [self assertUserApple:[FIRAuth auth].currentUser]; + OCMVerifyAll(_mockBackend); +} + /** @fn testSignInAnonymouslySuccess @brief Tests the flow of a successful @c signInAnonymouslyWithCompletion: call. */ @@ -2584,6 +2679,53 @@ - (void)assertUserGoogle:(FIRUser *)user { XCTAssertEqualObjects(googleUserInfo.email, kGoogleEmail); } +/** @fn expectGetAccountInfoApple + @brief Expects a GetAccountInfo request on the mock backend and calls back with fake account + data for a Apple Sign-In user. + */ +- (void)expectGetAccountInfoApple { + OCMExpect([_mockBackend getAccountInfo:[OCMArg any] callback:[OCMArg any]]) + .andCallBlock2(^(FIRGetAccountInfoRequest *_Nullable request, + FIRGetAccountInfoResponseCallback callback) { + XCTAssertEqualObjects(request.APIKey, kAPIKey); + XCTAssertEqualObjects(request.accessToken, kAccessToken); + dispatch_async(FIRAuthGlobalWorkQueue(), ^() { + id mockAppleUserInfo = OCMClassMock([FIRGetAccountInfoResponseProviderUserInfo class]); + OCMStub([mockAppleUserInfo providerID]).andReturn(FIRAppleAuthProviderID); + OCMStub([mockAppleUserInfo displayName]).andReturn(kAppleDisplayName); + OCMStub([mockAppleUserInfo federatedID]).andReturn(kAppleID); + OCMStub([mockAppleUserInfo email]).andReturn(kAppleEmail); + id mockGetAccountInfoResponseUser = OCMClassMock([FIRGetAccountInfoResponseUser class]); + OCMStub([mockGetAccountInfoResponseUser localID]).andReturn(kLocalID); + OCMStub([mockGetAccountInfoResponseUser displayName]).andReturn(kDisplayName); + OCMStub([mockGetAccountInfoResponseUser providerUserInfo]) + .andReturn((@[ mockAppleUserInfo ])); + id mockGetAccountInfoResponse = OCMClassMock([FIRGetAccountInfoResponse class]); + OCMStub([mockGetAccountInfoResponse users]).andReturn(@[ + mockGetAccountInfoResponseUser + ]); + callback(mockGetAccountInfoResponse, nil); + }); + }); +} + +/** @fn assertUserApple + @brief Asserts the given FIRUser matching the fake data returned by + @c expectGetAccountInfoApple. + @param user The user object to be verified. + */ +- (void)assertUserApple:(FIRUser *)user { + XCTAssertNotNil(user); + XCTAssertEqualObjects(user.uid, kLocalID); + XCTAssertEqualObjects(user.displayName, kDisplayName); + XCTAssertEqual(user.providerData.count, 1u); + id appleUserInfo = user.providerData[0]; + XCTAssertEqualObjects(appleUserInfo.providerID, FIRAppleAuthProviderID); + XCTAssertEqualObjects(appleUserInfo.uid, kAppleID); + XCTAssertEqualObjects(appleUserInfo.displayName, kAppleDisplayName); + XCTAssertEqualObjects(appleUserInfo.email, kAppleEmail); +} + /** @fn expectGetAccountInfoAnonymous @brief Expects a GetAccountInfo request on the mock backend and calls back with fake anonymous account data. diff --git a/FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m b/FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m index dc14d88ad82..4dce8eab5cc 100644 --- a/FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m +++ b/FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m @@ -243,18 +243,18 @@ - (void)testObtainingOAuthCredentialNoIDToken { XCTAssertNil(OAuthCredential.IDToken); } -/** @fn testObtainingOAuthCredentialNoIDToken - @brief Tests the correct creation of an OAuthCredential without an IDToken. +/** @fn testObtainingOAuthCredentialWithDisplayName + @brief Tests the correct creation of an OAuthCredential with a displayName. */ - (void)testObtainingOAuthCredentialWithDisplayName { FIRAuthCredential *credential = [FIROAuthProvider credentialWithProviderID:kFakeProviderID - accessToken:kFakeAccessToken]; + IDToken:kFakeIDToken rawNonce:nil accessToken:kFakeAccessToken displayName:kFakeDisplayName]; XCTAssertTrue([credential isKindOfClass:[FIROAuthCredential class]]); FIROAuthCredential *OAuthCredential = (FIROAuthCredential *)credential; XCTAssertEqualObjects(OAuthCredential.accessToken, kFakeAccessToken); XCTAssertEqualObjects(OAuthCredential.provider, kFakeProviderID); + XCTAssertEqualObjects(OAuthCredential.IDToken, kFakeIDToken); XCTAssertEqualObjects(OAuthCredential.displayName,kFakeDisplayName); - XCTAssertNil(OAuthCredential.IDToken); } /** @fn testObtainingOAuthCredentialWithIDToken From 8578f964b92c58bcfb4a73263956148f05f0e0f6 Mon Sep 17 00:00:00 2001 From: Yvonne Cheng Date: Mon, 8 Aug 2022 17:03:45 -0700 Subject: [PATCH 03/23] remove AuthSample.xcodeproj fiels and application.plist file under Sample --- .gitignore | 5 + FirebaseAuth/Tests/Sample/Application.plist | 0 .../AuthSample.xcodeproj/project.pbxproj | 1162 ----------------- .../xcschemes/AuthSample.xcscheme | 117 -- .../xcschemes/Auth_ApiTests.xcscheme | 77 -- .../xcschemes/Auth_E2eTests.xcscheme | 77 -- .../xcschemes/SwiftApiTests.xcscheme | 68 - 7 files changed, 5 insertions(+), 1501 deletions(-) delete mode 100644 FirebaseAuth/Tests/Sample/Application.plist delete mode 100644 FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj delete mode 100644 FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/AuthSample.xcscheme delete mode 100644 FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_ApiTests.xcscheme delete mode 100644 FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_E2eTests.xcscheme delete mode 100644 FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/SwiftApiTests.xcscheme diff --git a/.gitignore b/.gitignore index a3cdb087685..3a5f034bc73 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,7 @@ +#Firebase AuthSample files +FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/ +FirebaseAuth/Tests/Sample/Application.plist + FirebaseAuth/Tests/Sample/Sample/Application.plist FirebaseAuth/Tests/Sample/Sample/AuthCredentials.h FirebaseAuth/Tests/Sample/Sample/GoogleService-Info_multi.plist @@ -20,6 +24,7 @@ FirebaseInstallations/Source/Tests/Resources/GoogleService-Info.plist FirebaseMessaging/Tests/IntegrationTests/Resources/GoogleService-Info.plist # FirebaseMessaging test app GoogleService-Info.plist FirebaseMessaging/Apps/Shared/GoogleService-Info.plist + FirebaseMessaging/Apps/AdvancedSample/SampleWatchWatchKitExtension/GoogleService-Info.plist FirebaseMessaging/Apps/AdvancedSample/AppClips/GoogleService-Info.plist diff --git a/FirebaseAuth/Tests/Sample/Application.plist b/FirebaseAuth/Tests/Sample/Application.plist deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj deleted file mode 100644 index e4e039306ca..00000000000 --- a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj +++ /dev/null @@ -1,1162 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 51; - objects = { - -/* Begin PBXBuildFile section */ - 2D9368346D8FA940FA2BD392 /* Pods_Auth_E2eTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1B9909B9159B2191A05906FA /* Pods_Auth_E2eTests.framework */; }; - 400283EA23EA254B0006A298 /* MainViewController+MultiFactor.m in Sources */ = {isa = PBXBuildFile; fileRef = 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */; }; - 5EDCF9BC38AB1472B862D79B /* Pods_Auth_ApiTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 19E444FF7D3AE620B0F4293A /* Pods_Auth_ApiTests.framework */; }; - 731F70C06E1001F8313E21BE /* Pods_AuthSample.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E782F49011F2F27C9411D056 /* Pods_AuthSample.framework */; }; - 7350C60D85615F0F8199BCAA /* Pods_SwiftApiTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B5E2551BF842F02DF1A2937B /* Pods_SwiftApiTests.framework */; }; - DE1865AC245B879B00F8AD70 /* TestsBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865AB245B879B00F8AD70 /* TestsBase.swift */; }; - DE1865AE245B8A1400F8AD70 /* AnonymousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */; }; - DE1865B2245C7A2B00F8AD70 /* EmailPasswordTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */; }; - DE1865B4245C92A600F8AD70 /* GoogleTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B3245C92A600F8AD70 /* GoogleTests.swift */; }; - DE1865B6245C95DA00F8AD70 /* Credentials.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B5245C95DA00F8AD70 /* Credentials.swift */; }; - DE1865B8245CC6FC00F8AD70 /* FacebookTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B7245CC6FC00F8AD70 /* FacebookTests.swift */; }; - DE800B4722A2F8AF00AC9A23 /* MainViewController+Custom.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1122A2F8AF00AC9A23 /* MainViewController+Custom.m */; }; - DE800B4822A2F8AF00AC9A23 /* SettingsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1222A2F8AF00AC9A23 /* SettingsViewController.m */; }; - DE800B4922A2F8AF00AC9A23 /* MainViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE800B1322A2F8AF00AC9A23 /* MainViewController.xib */; }; - DE800B4A22A2F8AF00AC9A23 /* GoogleAuthProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1422A2F8AF00AC9A23 /* GoogleAuthProvider.m */; }; - DE800B4B22A2F8AF00AC9A23 /* MainViewController+User.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1822A2F8AF00AC9A23 /* MainViewController+User.m */; }; - DE800B4C22A2F8AF00AC9A23 /* MainViewController+GameCenter.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1922A2F8AF00AC9A23 /* MainViewController+GameCenter.m */; }; - DE800B4D22A2F8AF00AC9A23 /* MainViewController+Phone.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1A22A2F8AF00AC9A23 /* MainViewController+Phone.m */; }; - DE800B4E22A2F8AF00AC9A23 /* UserTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1B22A2F8AF00AC9A23 /* UserTableViewCell.m */; }; - DE800B4F22A2F8AF00AC9A23 /* MainViewController+Facebook.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1C22A2F8AF00AC9A23 /* MainViewController+Facebook.m */; }; - DE800B5022A2F8AF00AC9A23 /* UIViewController+Alerts.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2022A2F8AF00AC9A23 /* UIViewController+Alerts.m */; }; - DE800B5122A2F8AF00AC9A23 /* MainViewController+Email.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2222A2F8AF00AC9A23 /* MainViewController+Email.m */; }; - DE800B5222A2F8AF00AC9A23 /* MainViewController+Auth.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2322A2F8AF00AC9A23 /* MainViewController+Auth.m */; }; - DE800B5422A2F8AF00AC9A23 /* UserInfoViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE800B2822A2F8AF00AC9A23 /* UserInfoViewController.xib */; }; - DE800B5522A2F8AF00AC9A23 /* MainViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2922A2F8AF00AC9A23 /* MainViewController.m */; }; - DE800B5622A2F8AF00AC9A23 /* MainViewController+AutoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2B22A2F8AF00AC9A23 /* MainViewController+AutoTests.m */; }; - DE800B5722A2F8AF00AC9A23 /* MainViewController+OOB.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2C22A2F8AF00AC9A23 /* MainViewController+OOB.m */; }; - DE800B5822A2F8AF00AC9A23 /* AppManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2D22A2F8AF00AC9A23 /* AppManager.m */; }; - DE800B5922A2F8AF00AC9A23 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2E22A2F8AF00AC9A23 /* main.m */; }; - DE800B5A22A2F8AF00AC9A23 /* MainViewController+App.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2F22A2F8AF00AC9A23 /* MainViewController+App.m */; }; - DE800B5B22A2F8AF00AC9A23 /* MainViewController+OAuth.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3122A2F8AF00AC9A23 /* MainViewController+OAuth.m */; }; - DE800B5C22A2F8AF00AC9A23 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = DE800B3222A2F8AF00AC9A23 /* Images.xcassets */; }; - DE800B5D22A2F8AF00AC9A23 /* UserInfoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3422A2F8AF00AC9A23 /* UserInfoViewController.m */; }; - DE800B5E22A2F8AF00AC9A23 /* StaticContentTableViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3622A2F8AF00AC9A23 /* StaticContentTableViewManager.m */; }; - DE800B5F22A2F8AF00AC9A23 /* MainViewController+Google.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3922A2F8AF00AC9A23 /* MainViewController+Google.m */; }; - DE800B6022A2F8AF00AC9A23 /* FacebookAuthProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3B22A2F8AF00AC9A23 /* FacebookAuthProvider.m */; }; - DE800B6122A2F8AF00AC9A23 /* ApplicationDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3C22A2F8AF00AC9A23 /* ApplicationDelegate.m */; }; - DE800B6222A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m */; }; - DE800B6322A2F8AF00AC9A23 /* SettingsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE800B4122A2F8AF00AC9A23 /* SettingsViewController.xib */; }; - DE800B6422A2F8AF00AC9A23 /* AuthProviders.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B4522A2F8AF00AC9A23 /* AuthProviders.m */; }; - DE800B6722A2FF7300AC9A23 /* GoogleService-Info_multi.plist in Resources */ = {isa = PBXBuildFile; fileRef = DE800B6522A2FF7300AC9A23 /* GoogleService-Info_multi.plist */; }; - DE800B6822A2FF7300AC9A23 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = DE800B6622A2FF7300AC9A23 /* GoogleService-Info.plist */; }; - DEBEF60E245247A0005E1A8F /* AccountInfoTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEBEF60D245247A0005E1A8F /* AccountInfoTests.swift */; }; - DED400B0243E56F500BF6D56 /* FacebookAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400A4243E56F500BF6D56 /* FacebookAuthTests.m */; }; - DED400B1243E56F500BF6D56 /* generate_refresh_token.sh in Resources */ = {isa = PBXBuildFile; fileRef = DED400A5243E56F500BF6D56 /* generate_refresh_token.sh */; }; - DED400B3243E56F500BF6D56 /* AnonymousAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400A8243E56F500BF6D56 /* AnonymousAuthTests.m */; }; - DED400B5243E56F500BF6D56 /* AccountInfoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AB243E56F500BF6D56 /* AccountInfoTests.m */; }; - DED400B6243E56F500BF6D56 /* EmailPasswordAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AC243E56F500BF6D56 /* EmailPasswordAuthTests.m */; }; - DED400B7243E56F500BF6D56 /* CustomAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AD243E56F500BF6D56 /* CustomAuthTests.m */; }; - DED400B8243E56F500BF6D56 /* GoogleAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AE243E56F500BF6D56 /* GoogleAuthTests.m */; }; - DED400B9243E56F500BF6D56 /* FIRAuthApiTestsBase.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AF243E56F500BF6D56 /* FIRAuthApiTestsBase.m */; }; - DED400C1243E571500BF6D56 /* VerifyIOSClientTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BB243E571500BF6D56 /* VerifyIOSClientTests.m */; }; - DED400C2243E571500BF6D56 /* BYOAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BC243E571500BF6D56 /* BYOAuthTests.m */; }; - DED400C3243E571500BF6D56 /* FIRAuthE2eTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */; }; - DED400C4243E571500BF6D56 /* FIRAuthE2eTestsBase.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */; }; - DEF68E952799B9970064CC92 /* SwiftAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEF68E942799B9970064CC92 /* SwiftAPI.swift */; }; -/* End PBXBuildFile section */ - -/* Begin PBXContainerItemProxy section */ - DE800B7622A5927C00AC9A23 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = DE800AEC22A2F87E00AC9A23 /* Project object */; - proxyType = 1; - remoteGlobalIDString = DE800AF322A2F87E00AC9A23; - remoteInfo = AuthSample; - }; - DE800B9A22A5BD1800AC9A23 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = DE800AEC22A2F87E00AC9A23 /* Project object */; - proxyType = 1; - remoteGlobalIDString = DE800AF322A2F87E00AC9A23; - remoteInfo = AuthSample; - }; - DEBEF6082450EA27005E1A8F /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = DE800AEC22A2F87E00AC9A23 /* Project object */; - proxyType = 1; - remoteGlobalIDString = DE800AF322A2F87E00AC9A23; - remoteInfo = AuthSample; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXFileReference section */ - 0470AED2ED2D120262F08CCB /* Pods-SwiftApiTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SwiftApiTests.debug.xcconfig"; path = "Target Support Files/Pods-SwiftApiTests/Pods-SwiftApiTests.debug.xcconfig"; sourceTree = ""; }; - 19E444FF7D3AE620B0F4293A /* Pods_Auth_ApiTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Auth_ApiTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 1A7717341987080791B5A4C0 /* Pods-Auth_ApiTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Auth_ApiTests.debug.xcconfig"; path = "Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests.debug.xcconfig"; sourceTree = ""; }; - 1B9909B9159B2191A05906FA /* Pods_Auth_E2eTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Auth_E2eTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 2FF8EE500CF78004FC65C179 /* Pods-AuthSample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AuthSample.debug.xcconfig"; path = "Target Support Files/Pods-AuthSample/Pods-AuthSample.debug.xcconfig"; sourceTree = ""; }; - 400283E823EA254A0006A298 /* MainViewController+MultiFactor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+MultiFactor.h"; sourceTree = ""; }; - 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+MultiFactor.m"; sourceTree = ""; }; - 9E4DB36B019BA019C9EA4229 /* Pods-Auth_E2eTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Auth_E2eTests.debug.xcconfig"; path = "Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests.debug.xcconfig"; sourceTree = ""; }; - A1DE7ED770F906C5B9750C49 /* Pods-AuthSample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AuthSample.release.xcconfig"; path = "Target Support Files/Pods-AuthSample/Pods-AuthSample.release.xcconfig"; sourceTree = ""; }; - AF3816DA4B5B0385038F24E3 /* Pods-Auth_ApiTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Auth_ApiTests.release.xcconfig"; path = "Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests.release.xcconfig"; sourceTree = ""; }; - B5E2551BF842F02DF1A2937B /* Pods_SwiftApiTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_SwiftApiTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - B8F193D66088DE1B34480177 /* Pods-Auth_E2eTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Auth_E2eTests.release.xcconfig"; path = "Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests.release.xcconfig"; sourceTree = ""; }; - DE1865AB245B879B00F8AD70 /* TestsBase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TestsBase.swift; sourceTree = ""; }; - DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnonymousTests.swift; sourceTree = ""; }; - DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmailPasswordTests.swift; sourceTree = ""; }; - DE1865B3245C92A600F8AD70 /* GoogleTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GoogleTests.swift; sourceTree = ""; }; - DE1865B5245C95DA00F8AD70 /* Credentials.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Credentials.swift; sourceTree = ""; }; - DE1865B7245CC6FC00F8AD70 /* FacebookTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FacebookTests.swift; sourceTree = ""; }; - DE800AF422A2F87E00AC9A23 /* AuthSample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = AuthSample.app; sourceTree = BUILT_PRODUCTS_DIR; }; - DE800B0E22A2F8AF00AC9A23 /* AppManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppManager.h; sourceTree = ""; }; - DE800B0F22A2F8AF00AC9A23 /* MainViewController+AutoTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+AutoTests.h"; sourceTree = ""; }; - DE800B1022A2F8AF00AC9A23 /* MainViewController+OOB.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+OOB.h"; sourceTree = ""; }; - DE800B1122A2F8AF00AC9A23 /* MainViewController+Custom.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Custom.m"; sourceTree = ""; }; - DE800B1222A2F8AF00AC9A23 /* SettingsViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SettingsViewController.m; sourceTree = ""; }; - DE800B1322A2F8AF00AC9A23 /* MainViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MainViewController.xib; sourceTree = ""; }; - DE800B1422A2F8AF00AC9A23 /* GoogleAuthProvider.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GoogleAuthProvider.m; sourceTree = ""; }; - DE800B1522A2F8AF00AC9A23 /* UserInfoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserInfoViewController.h; sourceTree = ""; }; - DE800B1622A2F8AF00AC9A23 /* MainViewController+OAuth.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+OAuth.h"; sourceTree = ""; }; - DE800B1722A2F8AF00AC9A23 /* MainViewController+App.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+App.h"; sourceTree = ""; }; - DE800B1822A2F8AF00AC9A23 /* MainViewController+User.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+User.m"; sourceTree = ""; }; - DE800B1922A2F8AF00AC9A23 /* MainViewController+GameCenter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+GameCenter.m"; sourceTree = ""; }; - DE800B1A22A2F8AF00AC9A23 /* MainViewController+Phone.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Phone.m"; sourceTree = ""; }; - DE800B1B22A2F8AF00AC9A23 /* UserTableViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UserTableViewCell.m; sourceTree = ""; }; - DE800B1C22A2F8AF00AC9A23 /* MainViewController+Facebook.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Facebook.m"; sourceTree = ""; }; - DE800B1D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CustomTokenDataEntryViewController.h; sourceTree = ""; }; - DE800B1E22A2F8AF00AC9A23 /* FacebookAuthProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FacebookAuthProvider.h; sourceTree = ""; }; - DE800B1F22A2F8AF00AC9A23 /* ApplicationDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ApplicationDelegate.h; sourceTree = ""; }; - DE800B2022A2F8AF00AC9A23 /* UIViewController+Alerts.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIViewController+Alerts.m"; sourceTree = ""; }; - DE800B2122A2F8AF00AC9A23 /* MainViewController+Google.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Google.h"; sourceTree = ""; }; - DE800B2222A2F8AF00AC9A23 /* MainViewController+Email.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Email.m"; sourceTree = ""; }; - DE800B2322A2F8AF00AC9A23 /* MainViewController+Auth.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Auth.m"; sourceTree = ""; }; - DE800B2422A2F8AF00AC9A23 /* StaticContentTableViewManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StaticContentTableViewManager.h; sourceTree = ""; }; - DE800B2522A2F8AF00AC9A23 /* SampleTemplate.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = SampleTemplate.entitlements; sourceTree = ""; }; - DE800B2622A2F8AF00AC9A23 /* AuthProviders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthProviders.h; sourceTree = ""; }; - DE800B2722A2F8AF00AC9A23 /* ApplicationTemplate.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = ApplicationTemplate.plist; sourceTree = ""; }; - DE800B2822A2F8AF00AC9A23 /* UserInfoViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = UserInfoViewController.xib; sourceTree = ""; }; - DE800B2922A2F8AF00AC9A23 /* MainViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MainViewController.m; sourceTree = ""; }; - DE800B2A22A2F8AF00AC9A23 /* MainViewController+Custom.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Custom.h"; sourceTree = ""; }; - DE800B2B22A2F8AF00AC9A23 /* MainViewController+AutoTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+AutoTests.m"; sourceTree = ""; }; - DE800B2C22A2F8AF00AC9A23 /* MainViewController+OOB.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+OOB.m"; sourceTree = ""; }; - DE800B2D22A2F8AF00AC9A23 /* AppManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppManager.m; sourceTree = ""; }; - DE800B2E22A2F8AF00AC9A23 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; - DE800B2F22A2F8AF00AC9A23 /* MainViewController+App.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+App.m"; sourceTree = ""; }; - DE800B3022A2F8AF00AC9A23 /* MainViewController+Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Internal.h"; sourceTree = ""; }; - DE800B3122A2F8AF00AC9A23 /* MainViewController+OAuth.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+OAuth.m"; sourceTree = ""; }; - DE800B3222A2F8AF00AC9A23 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; - DE800B3322A2F8AF00AC9A23 /* GoogleAuthProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GoogleAuthProvider.h; sourceTree = ""; }; - DE800B3422A2F8AF00AC9A23 /* UserInfoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UserInfoViewController.m; sourceTree = ""; }; - DE800B3522A2F8AF00AC9A23 /* SettingsViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SettingsViewController.h; sourceTree = ""; }; - DE800B3622A2F8AF00AC9A23 /* StaticContentTableViewManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StaticContentTableViewManager.m; sourceTree = ""; }; - DE800B3722A2F8AF00AC9A23 /* MainViewController+Email.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Email.h"; sourceTree = ""; }; - DE800B3822A2F8AF00AC9A23 /* MainViewController+Auth.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Auth.h"; sourceTree = ""; }; - DE800B3922A2F8AF00AC9A23 /* MainViewController+Google.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Google.m"; sourceTree = ""; }; - DE800B3A22A2F8AF00AC9A23 /* UIViewController+Alerts.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIViewController+Alerts.h"; sourceTree = ""; }; - DE800B3B22A2F8AF00AC9A23 /* FacebookAuthProvider.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FacebookAuthProvider.m; sourceTree = ""; }; - DE800B3C22A2F8AF00AC9A23 /* ApplicationDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ApplicationDelegate.m; sourceTree = ""; }; - DE800B3D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CustomTokenDataEntryViewController.m; sourceTree = ""; }; - DE800B3E22A2F8AF00AC9A23 /* MainViewController+Facebook.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Facebook.h"; sourceTree = ""; }; - DE800B3F22A2F8AF00AC9A23 /* MainViewController+Phone.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Phone.h"; sourceTree = ""; }; - DE800B4022A2F8AF00AC9A23 /* UserTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserTableViewCell.h; sourceTree = ""; }; - DE800B4122A2F8AF00AC9A23 /* SettingsViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = SettingsViewController.xib; sourceTree = ""; }; - DE800B4222A2F8AF00AC9A23 /* MainViewController+GameCenter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+GameCenter.h"; sourceTree = ""; }; - DE800B4322A2F8AF00AC9A23 /* MainViewController+User.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+User.h"; sourceTree = ""; }; - DE800B4422A2F8AF00AC9A23 /* MainViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MainViewController.h; sourceTree = ""; }; - DE800B4522A2F8AF00AC9A23 /* AuthProviders.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AuthProviders.m; sourceTree = ""; }; - DE800B4622A2F8AF00AC9A23 /* AuthCredentialsTemplate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentialsTemplate.h; sourceTree = ""; }; - DE800B6522A2FF7300AC9A23 /* GoogleService-Info_multi.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info_multi.plist"; sourceTree = ""; }; - DE800B6622A2FF7300AC9A23 /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = ""; }; - DE800B6922A2FF8700AC9A23 /* Application.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Application.plist; sourceTree = ""; }; - DE800B6A22A2FF8700AC9A23 /* Sample.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Sample.entitlements; sourceTree = ""; }; - DE800B6C22A2FFFF00AC9A23 /* AuthCredentials.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentials.h; sourceTree = ""; }; - DE800B7122A5927C00AC9A23 /* Auth_ApiTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Auth_ApiTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - DE800B9522A5BD1800AC9A23 /* Auth_E2eTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Auth_E2eTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - DEBEF6032450EA27005E1A8F /* SwiftApiTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SwiftApiTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - DEBEF6072450EA27005E1A8F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - DEBEF60D245247A0005E1A8F /* AccountInfoTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountInfoTests.swift; sourceTree = ""; }; - DED400A3243E56F500BF6D56 /* AuthCredentials.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentials.h; sourceTree = ""; }; - DED400A4243E56F500BF6D56 /* FacebookAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FacebookAuthTests.m; sourceTree = ""; }; - DED400A5243E56F500BF6D56 /* generate_refresh_token.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = generate_refresh_token.sh; sourceTree = ""; }; - DED400A6243E56F500BF6D56 /* PhoneMultiFactorTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PhoneMultiFactorTests.swift; sourceTree = ""; }; - DED400A7243E56F500BF6D56 /* AuthCredentialsTemplate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentialsTemplate.h; sourceTree = ""; }; - DED400A8243E56F500BF6D56 /* AnonymousAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AnonymousAuthTests.m; sourceTree = ""; }; - DED400A9243E56F500BF6D56 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - DED400AA243E56F500BF6D56 /* FIRAuthApiTestsBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FIRAuthApiTestsBase.h; sourceTree = ""; }; - DED400AB243E56F500BF6D56 /* AccountInfoTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AccountInfoTests.m; sourceTree = ""; }; - DED400AC243E56F500BF6D56 /* EmailPasswordAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = EmailPasswordAuthTests.m; sourceTree = ""; }; - DED400AD243E56F500BF6D56 /* CustomAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CustomAuthTests.m; sourceTree = ""; }; - DED400AE243E56F500BF6D56 /* GoogleAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GoogleAuthTests.m; sourceTree = ""; }; - DED400AF243E56F500BF6D56 /* FIRAuthApiTestsBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthApiTestsBase.m; sourceTree = ""; }; - DED400BA243E571500BF6D56 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - DED400BB243E571500BF6D56 /* VerifyIOSClientTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = VerifyIOSClientTests.m; sourceTree = ""; }; - DED400BC243E571500BF6D56 /* BYOAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BYOAuthTests.m; sourceTree = ""; }; - DED400BD243E571500BF6D56 /* FIRAuthE2eTestsBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FIRAuthE2eTestsBase.h; sourceTree = ""; }; - DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthE2eTests.m; sourceTree = ""; }; - DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthE2eTestsBase.m; sourceTree = ""; }; - DEF68E942799B9970064CC92 /* SwiftAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftAPI.swift; sourceTree = ""; }; - DFA27C5857B4273250BE0B77 /* Pods-SwiftApiTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SwiftApiTests.release.xcconfig"; path = "Target Support Files/Pods-SwiftApiTests/Pods-SwiftApiTests.release.xcconfig"; sourceTree = ""; }; - E782F49011F2F27C9411D056 /* Pods_AuthSample.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_AuthSample.framework; sourceTree = BUILT_PRODUCTS_DIR; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - DE800AF122A2F87E00AC9A23 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 731F70C06E1001F8313E21BE /* Pods_AuthSample.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DE800B6E22A5927C00AC9A23 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 5EDCF9BC38AB1472B862D79B /* Pods_Auth_ApiTests.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DE800B9222A5BD1800AC9A23 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 2D9368346D8FA940FA2BD392 /* Pods_Auth_E2eTests.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DEBEF6002450EA27005E1A8F /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 7350C60D85615F0F8199BCAA /* Pods_SwiftApiTests.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - C4C05E1CFDE4CC7F68A7B4F1 /* Frameworks */ = { - isa = PBXGroup; - children = ( - E782F49011F2F27C9411D056 /* Pods_AuthSample.framework */, - 19E444FF7D3AE620B0F4293A /* Pods_Auth_ApiTests.framework */, - 1B9909B9159B2191A05906FA /* Pods_Auth_E2eTests.framework */, - B5E2551BF842F02DF1A2937B /* Pods_SwiftApiTests.framework */, - ); - name = Frameworks; - sourceTree = ""; - }; - C8C0A17357FAC82788BE1349 /* Pods */ = { - isa = PBXGroup; - children = ( - 2FF8EE500CF78004FC65C179 /* Pods-AuthSample.debug.xcconfig */, - A1DE7ED770F906C5B9750C49 /* Pods-AuthSample.release.xcconfig */, - 1A7717341987080791B5A4C0 /* Pods-Auth_ApiTests.debug.xcconfig */, - AF3816DA4B5B0385038F24E3 /* Pods-Auth_ApiTests.release.xcconfig */, - 9E4DB36B019BA019C9EA4229 /* Pods-Auth_E2eTests.debug.xcconfig */, - B8F193D66088DE1B34480177 /* Pods-Auth_E2eTests.release.xcconfig */, - 0470AED2ED2D120262F08CCB /* Pods-SwiftApiTests.debug.xcconfig */, - DFA27C5857B4273250BE0B77 /* Pods-SwiftApiTests.release.xcconfig */, - ); - path = Pods; - sourceTree = ""; - }; - DE800AEB22A2F87E00AC9A23 = { - isa = PBXGroup; - children = ( - DE800B0D22A2F8AF00AC9A23 /* Sample */, - DE800B7222A5927C00AC9A23 /* Auth_ApiTests */, - DE800B9622A5BD1800AC9A23 /* E2eTests */, - DEBEF6042450EA27005E1A8F /* SwiftApiTests */, - DE800AF522A2F87E00AC9A23 /* Products */, - C8C0A17357FAC82788BE1349 /* Pods */, - C4C05E1CFDE4CC7F68A7B4F1 /* Frameworks */, - ); - sourceTree = ""; - }; - DE800AF522A2F87E00AC9A23 /* Products */ = { - isa = PBXGroup; - children = ( - DE800AF422A2F87E00AC9A23 /* AuthSample.app */, - DE800B7122A5927C00AC9A23 /* Auth_ApiTests.xctest */, - DE800B9522A5BD1800AC9A23 /* Auth_E2eTests.xctest */, - DEBEF6032450EA27005E1A8F /* SwiftApiTests.xctest */, - ); - name = Products; - sourceTree = ""; - }; - DE800B0D22A2F8AF00AC9A23 /* Sample */ = { - isa = PBXGroup; - children = ( - DE800B6922A2FF8700AC9A23 /* Application.plist */, - DE800B1F22A2F8AF00AC9A23 /* ApplicationDelegate.h */, - DE800B3C22A2F8AF00AC9A23 /* ApplicationDelegate.m */, - DE800B2722A2F8AF00AC9A23 /* ApplicationTemplate.plist */, - DE800B0E22A2F8AF00AC9A23 /* AppManager.h */, - DE800B2D22A2F8AF00AC9A23 /* AppManager.m */, - DE800B6C22A2FFFF00AC9A23 /* AuthCredentials.h */, - DE800B4622A2F8AF00AC9A23 /* AuthCredentialsTemplate.h */, - DE800B2622A2F8AF00AC9A23 /* AuthProviders.h */, - DE800B4522A2F8AF00AC9A23 /* AuthProviders.m */, - DE800B1D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.h */, - DE800B3D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m */, - DE800B1E22A2F8AF00AC9A23 /* FacebookAuthProvider.h */, - DE800B3B22A2F8AF00AC9A23 /* FacebookAuthProvider.m */, - DE800B3322A2F8AF00AC9A23 /* GoogleAuthProvider.h */, - DE800B1422A2F8AF00AC9A23 /* GoogleAuthProvider.m */, - DE800B6522A2FF7300AC9A23 /* GoogleService-Info_multi.plist */, - DE800B6622A2FF7300AC9A23 /* GoogleService-Info.plist */, - DE800B3222A2F8AF00AC9A23 /* Images.xcassets */, - DE800B2E22A2F8AF00AC9A23 /* main.m */, - DE800B4422A2F8AF00AC9A23 /* MainViewController.h */, - DE800B2922A2F8AF00AC9A23 /* MainViewController.m */, - DE800B1322A2F8AF00AC9A23 /* MainViewController.xib */, - DE800B1722A2F8AF00AC9A23 /* MainViewController+App.h */, - DE800B2F22A2F8AF00AC9A23 /* MainViewController+App.m */, - DE800B3822A2F8AF00AC9A23 /* MainViewController+Auth.h */, - DE800B2322A2F8AF00AC9A23 /* MainViewController+Auth.m */, - DE800B0F22A2F8AF00AC9A23 /* MainViewController+AutoTests.h */, - DE800B2B22A2F8AF00AC9A23 /* MainViewController+AutoTests.m */, - DE800B2A22A2F8AF00AC9A23 /* MainViewController+Custom.h */, - DE800B1122A2F8AF00AC9A23 /* MainViewController+Custom.m */, - DE800B3722A2F8AF00AC9A23 /* MainViewController+Email.h */, - DE800B2222A2F8AF00AC9A23 /* MainViewController+Email.m */, - DE800B3E22A2F8AF00AC9A23 /* MainViewController+Facebook.h */, - DE800B1C22A2F8AF00AC9A23 /* MainViewController+Facebook.m */, - DE800B4222A2F8AF00AC9A23 /* MainViewController+GameCenter.h */, - DE800B1922A2F8AF00AC9A23 /* MainViewController+GameCenter.m */, - DE800B2122A2F8AF00AC9A23 /* MainViewController+Google.h */, - DE800B3922A2F8AF00AC9A23 /* MainViewController+Google.m */, - DE800B3022A2F8AF00AC9A23 /* MainViewController+Internal.h */, - 400283E823EA254A0006A298 /* MainViewController+MultiFactor.h */, - 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */, - DE800B1622A2F8AF00AC9A23 /* MainViewController+OAuth.h */, - DE800B3122A2F8AF00AC9A23 /* MainViewController+OAuth.m */, - DE800B1022A2F8AF00AC9A23 /* MainViewController+OOB.h */, - DE800B2C22A2F8AF00AC9A23 /* MainViewController+OOB.m */, - DE800B3F22A2F8AF00AC9A23 /* MainViewController+Phone.h */, - DE800B1A22A2F8AF00AC9A23 /* MainViewController+Phone.m */, - DE800B4322A2F8AF00AC9A23 /* MainViewController+User.h */, - DE800B1822A2F8AF00AC9A23 /* MainViewController+User.m */, - DE800B6A22A2FF8700AC9A23 /* Sample.entitlements */, - DE800B2522A2F8AF00AC9A23 /* SampleTemplate.entitlements */, - DE800B3522A2F8AF00AC9A23 /* SettingsViewController.h */, - DE800B1222A2F8AF00AC9A23 /* SettingsViewController.m */, - DE800B4122A2F8AF00AC9A23 /* SettingsViewController.xib */, - DE800B2422A2F8AF00AC9A23 /* StaticContentTableViewManager.h */, - DE800B3622A2F8AF00AC9A23 /* StaticContentTableViewManager.m */, - DE800B3A22A2F8AF00AC9A23 /* UIViewController+Alerts.h */, - DE800B2022A2F8AF00AC9A23 /* UIViewController+Alerts.m */, - DE800B1522A2F8AF00AC9A23 /* UserInfoViewController.h */, - DE800B3422A2F8AF00AC9A23 /* UserInfoViewController.m */, - DE800B2822A2F8AF00AC9A23 /* UserInfoViewController.xib */, - DE800B4022A2F8AF00AC9A23 /* UserTableViewCell.h */, - DE800B1B22A2F8AF00AC9A23 /* UserTableViewCell.m */, - ); - path = Sample; - sourceTree = SOURCE_ROOT; - }; - DE800B7222A5927C00AC9A23 /* Auth_ApiTests */ = { - isa = PBXGroup; - children = ( - DED400AB243E56F500BF6D56 /* AccountInfoTests.m */, - DED400A8243E56F500BF6D56 /* AnonymousAuthTests.m */, - DED400A3243E56F500BF6D56 /* AuthCredentials.h */, - DED400A7243E56F500BF6D56 /* AuthCredentialsTemplate.h */, - DED400AD243E56F500BF6D56 /* CustomAuthTests.m */, - DED400AC243E56F500BF6D56 /* EmailPasswordAuthTests.m */, - DED400A4243E56F500BF6D56 /* FacebookAuthTests.m */, - DED400AA243E56F500BF6D56 /* FIRAuthApiTestsBase.h */, - DED400AF243E56F500BF6D56 /* FIRAuthApiTestsBase.m */, - DED400A5243E56F500BF6D56 /* generate_refresh_token.sh */, - DED400AE243E56F500BF6D56 /* GoogleAuthTests.m */, - DED400A9243E56F500BF6D56 /* Info.plist */, - DED400A6243E56F500BF6D56 /* PhoneMultiFactorTests.swift */, - ); - name = Auth_ApiTests; - path = ApiTests; - sourceTree = SOURCE_ROOT; - }; - DE800B9622A5BD1800AC9A23 /* E2eTests */ = { - isa = PBXGroup; - children = ( - DED400BC243E571500BF6D56 /* BYOAuthTests.m */, - DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */, - DED400BD243E571500BF6D56 /* FIRAuthE2eTestsBase.h */, - DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */, - DED400BA243E571500BF6D56 /* Info.plist */, - DED400BB243E571500BF6D56 /* VerifyIOSClientTests.m */, - ); - path = E2eTests; - sourceTree = SOURCE_ROOT; - }; - DEBEF6042450EA27005E1A8F /* SwiftApiTests */ = { - isa = PBXGroup; - children = ( - DEBEF6072450EA27005E1A8F /* Info.plist */, - DEBEF60D245247A0005E1A8F /* AccountInfoTests.swift */, - DE1865AB245B879B00F8AD70 /* TestsBase.swift */, - DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */, - DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */, - DE1865B3245C92A600F8AD70 /* GoogleTests.swift */, - DE1865B5245C95DA00F8AD70 /* Credentials.swift */, - DE1865B7245CC6FC00F8AD70 /* FacebookTests.swift */, - DEF68E942799B9970064CC92 /* SwiftAPI.swift */, - ); - path = SwiftApiTests; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - DE800AF322A2F87E00AC9A23 /* AuthSample */ = { - isa = PBXNativeTarget; - buildConfigurationList = DE800B0A22A2F88000AC9A23 /* Build configuration list for PBXNativeTarget "AuthSample" */; - buildPhases = ( - 6E443E69F97F9D8B522B6BD2 /* [CP] Check Pods Manifest.lock */, - DE800AF022A2F87E00AC9A23 /* Sources */, - DE800AF122A2F87E00AC9A23 /* Frameworks */, - DE800AF222A2F87E00AC9A23 /* Resources */, - 3B56363253287110A0B8A8B7 /* [CP] Embed Pods Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = AuthSample; - productName = AuthSample; - productReference = DE800AF422A2F87E00AC9A23 /* AuthSample.app */; - productType = "com.apple.product-type.application"; - }; - DE800B7022A5927C00AC9A23 /* Auth_ApiTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = DE800B7A22A5927C00AC9A23 /* Build configuration list for PBXNativeTarget "Auth_ApiTests" */; - buildPhases = ( - 398665313C934F44F17AAD71 /* [CP] Check Pods Manifest.lock */, - DE800B6D22A5927C00AC9A23 /* Sources */, - DE800B6E22A5927C00AC9A23 /* Frameworks */, - DE800B6F22A5927C00AC9A23 /* Resources */, - EBE4C98CFE4D95E43BEE3119 /* [CP] Embed Pods Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - DE800B7722A5927C00AC9A23 /* PBXTargetDependency */, - ); - name = Auth_ApiTests; - productName = Auth_ApiTests; - productReference = DE800B7122A5927C00AC9A23 /* Auth_ApiTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - DE800B9422A5BD1800AC9A23 /* Auth_E2eTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = DE800B9C22A5BD1800AC9A23 /* Build configuration list for PBXNativeTarget "Auth_E2eTests" */; - buildPhases = ( - EC843A773540DCA96200DC21 /* [CP] Check Pods Manifest.lock */, - DE800B9122A5BD1800AC9A23 /* Sources */, - DE800B9222A5BD1800AC9A23 /* Frameworks */, - DE800B9322A5BD1800AC9A23 /* Resources */, - B62EC7DEFEC79BE35B83BF6F /* [CP] Embed Pods Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - DE800B9B22A5BD1800AC9A23 /* PBXTargetDependency */, - ); - name = Auth_E2eTests; - productName = Auth_E2eTests; - productReference = DE800B9522A5BD1800AC9A23 /* Auth_E2eTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - DEBEF6022450EA27005E1A8F /* SwiftApiTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = DEBEF60A2450EA27005E1A8F /* Build configuration list for PBXNativeTarget "SwiftApiTests" */; - buildPhases = ( - 5B47162ED76807737D484CD1 /* [CP] Check Pods Manifest.lock */, - DEBEF5FF2450EA27005E1A8F /* Sources */, - DEBEF6002450EA27005E1A8F /* Frameworks */, - DEBEF6012450EA27005E1A8F /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - DEBEF6092450EA27005E1A8F /* PBXTargetDependency */, - ); - name = SwiftApiTests; - productName = SwiftApiTests; - productReference = DEBEF6032450EA27005E1A8F /* SwiftApiTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - DE800AEC22A2F87E00AC9A23 /* Project object */ = { - isa = PBXProject; - attributes = { - LastSwiftUpdateCheck = 1140; - LastUpgradeCheck = 1340; - ORGANIZATIONNAME = Firebase; - TargetAttributes = { - DE800AF322A2F87E00AC9A23 = { - CreatedOnToolsVersion = 10.2; - LastSwiftMigration = 1140; - }; - DE800B7022A5927C00AC9A23 = { - CreatedOnToolsVersion = 10.2; - LastSwiftMigration = 1020; - TestTargetID = DE800AF322A2F87E00AC9A23; - }; - DE800B9422A5BD1800AC9A23 = { - CreatedOnToolsVersion = 10.2; - TestTargetID = DE800AF322A2F87E00AC9A23; - }; - DEBEF6022450EA27005E1A8F = { - CreatedOnToolsVersion = 11.4.1; - TestTargetID = DE800AF322A2F87E00AC9A23; - }; - }; - }; - buildConfigurationList = DE800AEF22A2F87E00AC9A23 /* Build configuration list for PBXProject "AuthSample" */; - compatibilityVersion = "Xcode 9.3"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = DE800AEB22A2F87E00AC9A23; - productRefGroup = DE800AF522A2F87E00AC9A23 /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - DE800AF322A2F87E00AC9A23 /* AuthSample */, - DE800B7022A5927C00AC9A23 /* Auth_ApiTests */, - DE800B9422A5BD1800AC9A23 /* Auth_E2eTests */, - DEBEF6022450EA27005E1A8F /* SwiftApiTests */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - DE800AF222A2F87E00AC9A23 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DE800B5422A2F8AF00AC9A23 /* UserInfoViewController.xib in Resources */, - DE800B5C22A2F8AF00AC9A23 /* Images.xcassets in Resources */, - DE800B4922A2F8AF00AC9A23 /* MainViewController.xib in Resources */, - DE800B6722A2FF7300AC9A23 /* GoogleService-Info_multi.plist in Resources */, - DE800B6322A2F8AF00AC9A23 /* SettingsViewController.xib in Resources */, - DE800B6822A2FF7300AC9A23 /* GoogleService-Info.plist in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DE800B6F22A5927C00AC9A23 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DED400B1243E56F500BF6D56 /* generate_refresh_token.sh in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DE800B9322A5BD1800AC9A23 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DEBEF6012450EA27005E1A8F /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXShellScriptBuildPhase section */ - 398665313C934F44F17AAD71 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Auth_ApiTests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - 3B56363253287110A0B8A8B7 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-AuthSample/Pods-AuthSample-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-AuthSample/Pods-AuthSample-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-AuthSample/Pods-AuthSample-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - 5B47162ED76807737D484CD1 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-SwiftApiTests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - 6E443E69F97F9D8B522B6BD2 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-AuthSample-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - B62EC7DEFEC79BE35B83BF6F /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - EBE4C98CFE4D95E43BEE3119 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - EC843A773540DCA96200DC21 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Auth_E2eTests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; -/* End PBXShellScriptBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - DE800AF022A2F87E00AC9A23 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DE800B5722A2F8AF00AC9A23 /* MainViewController+OOB.m in Sources */, - DE800B4E22A2F8AF00AC9A23 /* UserTableViewCell.m in Sources */, - DE800B6422A2F8AF00AC9A23 /* AuthProviders.m in Sources */, - DE800B4F22A2F8AF00AC9A23 /* MainViewController+Facebook.m in Sources */, - DE800B4D22A2F8AF00AC9A23 /* MainViewController+Phone.m in Sources */, - DE800B4722A2F8AF00AC9A23 /* MainViewController+Custom.m in Sources */, - 400283EA23EA254B0006A298 /* MainViewController+MultiFactor.m in Sources */, - DE800B5A22A2F8AF00AC9A23 /* MainViewController+App.m in Sources */, - DE800B6222A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m in Sources */, - DE800B6122A2F8AF00AC9A23 /* ApplicationDelegate.m in Sources */, - DE800B4A22A2F8AF00AC9A23 /* GoogleAuthProvider.m in Sources */, - DE800B5B22A2F8AF00AC9A23 /* MainViewController+OAuth.m in Sources */, - DE800B6022A2F8AF00AC9A23 /* FacebookAuthProvider.m in Sources */, - DE800B5922A2F8AF00AC9A23 /* main.m in Sources */, - DE800B5222A2F8AF00AC9A23 /* MainViewController+Auth.m in Sources */, - DE800B5F22A2F8AF00AC9A23 /* MainViewController+Google.m in Sources */, - DE800B5D22A2F8AF00AC9A23 /* UserInfoViewController.m in Sources */, - DE800B4B22A2F8AF00AC9A23 /* MainViewController+User.m in Sources */, - DE800B5522A2F8AF00AC9A23 /* MainViewController.m in Sources */, - DE800B5122A2F8AF00AC9A23 /* MainViewController+Email.m in Sources */, - DE800B5022A2F8AF00AC9A23 /* UIViewController+Alerts.m in Sources */, - DE800B5E22A2F8AF00AC9A23 /* StaticContentTableViewManager.m in Sources */, - DE800B4C22A2F8AF00AC9A23 /* MainViewController+GameCenter.m in Sources */, - DE800B4822A2F8AF00AC9A23 /* SettingsViewController.m in Sources */, - DE800B5622A2F8AF00AC9A23 /* MainViewController+AutoTests.m in Sources */, - DE800B5822A2F8AF00AC9A23 /* AppManager.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DE800B6D22A5927C00AC9A23 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DED400B0243E56F500BF6D56 /* FacebookAuthTests.m in Sources */, - DED400B5243E56F500BF6D56 /* AccountInfoTests.m in Sources */, - DED400B6243E56F500BF6D56 /* EmailPasswordAuthTests.m in Sources */, - DED400B9243E56F500BF6D56 /* FIRAuthApiTestsBase.m in Sources */, - DED400B3243E56F500BF6D56 /* AnonymousAuthTests.m in Sources */, - DED400B7243E56F500BF6D56 /* CustomAuthTests.m in Sources */, - DED400B8243E56F500BF6D56 /* GoogleAuthTests.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DE800B9122A5BD1800AC9A23 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DED400C2243E571500BF6D56 /* BYOAuthTests.m in Sources */, - DED400C4243E571500BF6D56 /* FIRAuthE2eTestsBase.m in Sources */, - DED400C1243E571500BF6D56 /* VerifyIOSClientTests.m in Sources */, - DED400C3243E571500BF6D56 /* FIRAuthE2eTests.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DEBEF5FF2450EA27005E1A8F /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DEF68E952799B9970064CC92 /* SwiftAPI.swift in Sources */, - DE1865B4245C92A600F8AD70 /* GoogleTests.swift in Sources */, - DE1865AE245B8A1400F8AD70 /* AnonymousTests.swift in Sources */, - DE1865B8245CC6FC00F8AD70 /* FacebookTests.swift in Sources */, - DE1865B6245C95DA00F8AD70 /* Credentials.swift in Sources */, - DE1865B2245C7A2B00F8AD70 /* EmailPasswordTests.swift in Sources */, - DE1865AC245B879B00F8AD70 /* TestsBase.swift in Sources */, - DEBEF60E245247A0005E1A8F /* AccountInfoTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - DE800B7722A5927C00AC9A23 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = DE800AF322A2F87E00AC9A23 /* AuthSample */; - targetProxy = DE800B7622A5927C00AC9A23 /* PBXContainerItemProxy */; - }; - DE800B9B22A5BD1800AC9A23 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = DE800AF322A2F87E00AC9A23 /* AuthSample */; - targetProxy = DE800B9A22A5BD1800AC9A23 /* PBXContainerItemProxy */; - }; - DEBEF6092450EA27005E1A8F /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = DE800AF322A2F87E00AC9A23 /* AuthSample */; - targetProxy = DEBEF6082450EA27005E1A8F /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin XCBuildConfiguration section */ - DE800B0822A2F88000AC9A23 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.1; - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - }; - name = Debug; - }; - DE800B0922A2F88000AC9A23 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.1; - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - SDKROOT = iphoneos; - SWIFT_COMPILATION_MODE = wholemodule; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - DE800B0B22A2F88000AC9A23 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 2FF8EE500CF78004FC65C179 /* Pods-AuthSample.debug.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Sample/Sample.entitlements; - CODE_SIGN_STYLE = Automatic; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = ""; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "${SRCROOT}/../../..", - ); - INFOPLIST_FILE = Sample/Application.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.firebase.auth1; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - DE800B0C22A2F88000AC9A23 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = A1DE7ED770F906C5B9750C49 /* Pods-AuthSample.release.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Sample/Sample.entitlements; - CODE_SIGN_STYLE = Automatic; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "${SRCROOT}/../../..", - ); - INFOPLIST_FILE = Sample/Application.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.firebase.auth1; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Release; - }; - DE800B7822A5927C00AC9A23 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 1A7717341987080791B5A4C0 /* Pods-Auth_ApiTests.debug.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = ApiTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-ApiTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "../ApiTests/Auth_ApiTests-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; - }; - name = Debug; - }; - DE800B7922A5927C00AC9A23 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = AF3816DA4B5B0385038F24E3 /* Pods-Auth_ApiTests.release.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = ApiTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-ApiTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "../ApiTests/Auth_ApiTests-Bridging-Header.h"; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; - }; - name = Release; - }; - DE800B9D22A5BD1800AC9A23 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 9E4DB36B019BA019C9EA4229 /* Pods-Auth_E2eTests.debug.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = E2eTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-E2eTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; - }; - name = Debug; - }; - DE800B9E22A5BD1800AC9A23 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = B8F193D66088DE1B34480177 /* Pods-Auth_E2eTests.release.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = E2eTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-E2eTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; - }; - name = Release; - }; - DEBEF60B2450EA27005E1A8F /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 0470AED2ED2D120262F08CCB /* Pods-SwiftApiTests.debug.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = SwiftApiTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.1; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.google.firebase.SwiftApiTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; - }; - name = Debug; - }; - DEBEF60C2450EA27005E1A8F /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = DFA27C5857B4273250BE0B77 /* Pods-SwiftApiTests.release.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = SwiftApiTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.1; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.google.firebase.SwiftApiTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - DE800AEF22A2F87E00AC9A23 /* Build configuration list for PBXProject "AuthSample" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - DE800B0822A2F88000AC9A23 /* Debug */, - DE800B0922A2F88000AC9A23 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - DE800B0A22A2F88000AC9A23 /* Build configuration list for PBXNativeTarget "AuthSample" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - DE800B0B22A2F88000AC9A23 /* Debug */, - DE800B0C22A2F88000AC9A23 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - DE800B7A22A5927C00AC9A23 /* Build configuration list for PBXNativeTarget "Auth_ApiTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - DE800B7822A5927C00AC9A23 /* Debug */, - DE800B7922A5927C00AC9A23 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - DE800B9C22A5BD1800AC9A23 /* Build configuration list for PBXNativeTarget "Auth_E2eTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - DE800B9D22A5BD1800AC9A23 /* Debug */, - DE800B9E22A5BD1800AC9A23 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - DEBEF60A2450EA27005E1A8F /* Build configuration list for PBXNativeTarget "SwiftApiTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - DEBEF60B2450EA27005E1A8F /* Debug */, - DEBEF60C2450EA27005E1A8F /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = DE800AEC22A2F87E00AC9A23 /* Project object */; -} diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/AuthSample.xcscheme b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/AuthSample.xcscheme deleted file mode 100644 index 51a1848207c..00000000000 --- a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/AuthSample.xcscheme +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_ApiTests.xcscheme b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_ApiTests.xcscheme deleted file mode 100644 index df76cae1734..00000000000 --- a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_ApiTests.xcscheme +++ /dev/null @@ -1,77 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_E2eTests.xcscheme b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_E2eTests.xcscheme deleted file mode 100644 index e168a7c0c44..00000000000 --- a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_E2eTests.xcscheme +++ /dev/null @@ -1,77 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/SwiftApiTests.xcscheme b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/SwiftApiTests.xcscheme deleted file mode 100644 index d0da96a31bd..00000000000 --- a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/SwiftApiTests.xcscheme +++ /dev/null @@ -1,68 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - From 8ca23e42e4898d0b7ae881dbe71f5b2b266d4ef8 Mon Sep 17 00:00:00 2001 From: Yvonne Cheng Date: Mon, 8 Aug 2022 21:06:27 -0700 Subject: [PATCH 04/23] Revert "remove AuthSample.xcodeproj fiels and application.plist file under Sample" This reverts commit 8578f964b92c58bcfb4a73263956148f05f0e0f6. --- .gitignore | 5 - FirebaseAuth/Tests/Sample/Application.plist | 0 .../AuthSample.xcodeproj/project.pbxproj | 1162 +++++++++++++++++ .../xcschemes/AuthSample.xcscheme | 117 ++ .../xcschemes/Auth_ApiTests.xcscheme | 77 ++ .../xcschemes/Auth_E2eTests.xcscheme | 77 ++ .../xcschemes/SwiftApiTests.xcscheme | 68 + 7 files changed, 1501 insertions(+), 5 deletions(-) create mode 100644 FirebaseAuth/Tests/Sample/Application.plist create mode 100644 FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj create mode 100644 FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/AuthSample.xcscheme create mode 100644 FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_ApiTests.xcscheme create mode 100644 FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_E2eTests.xcscheme create mode 100644 FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/SwiftApiTests.xcscheme diff --git a/.gitignore b/.gitignore index 3a5f034bc73..a3cdb087685 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,3 @@ -#Firebase AuthSample files -FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/ -FirebaseAuth/Tests/Sample/Application.plist - FirebaseAuth/Tests/Sample/Sample/Application.plist FirebaseAuth/Tests/Sample/Sample/AuthCredentials.h FirebaseAuth/Tests/Sample/Sample/GoogleService-Info_multi.plist @@ -24,7 +20,6 @@ FirebaseInstallations/Source/Tests/Resources/GoogleService-Info.plist FirebaseMessaging/Tests/IntegrationTests/Resources/GoogleService-Info.plist # FirebaseMessaging test app GoogleService-Info.plist FirebaseMessaging/Apps/Shared/GoogleService-Info.plist - FirebaseMessaging/Apps/AdvancedSample/SampleWatchWatchKitExtension/GoogleService-Info.plist FirebaseMessaging/Apps/AdvancedSample/AppClips/GoogleService-Info.plist diff --git a/FirebaseAuth/Tests/Sample/Application.plist b/FirebaseAuth/Tests/Sample/Application.plist new file mode 100644 index 00000000000..e69de29bb2d diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj new file mode 100644 index 00000000000..e4e039306ca --- /dev/null +++ b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj @@ -0,0 +1,1162 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 51; + objects = { + +/* Begin PBXBuildFile section */ + 2D9368346D8FA940FA2BD392 /* Pods_Auth_E2eTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1B9909B9159B2191A05906FA /* Pods_Auth_E2eTests.framework */; }; + 400283EA23EA254B0006A298 /* MainViewController+MultiFactor.m in Sources */ = {isa = PBXBuildFile; fileRef = 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */; }; + 5EDCF9BC38AB1472B862D79B /* Pods_Auth_ApiTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 19E444FF7D3AE620B0F4293A /* Pods_Auth_ApiTests.framework */; }; + 731F70C06E1001F8313E21BE /* Pods_AuthSample.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E782F49011F2F27C9411D056 /* Pods_AuthSample.framework */; }; + 7350C60D85615F0F8199BCAA /* Pods_SwiftApiTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B5E2551BF842F02DF1A2937B /* Pods_SwiftApiTests.framework */; }; + DE1865AC245B879B00F8AD70 /* TestsBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865AB245B879B00F8AD70 /* TestsBase.swift */; }; + DE1865AE245B8A1400F8AD70 /* AnonymousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */; }; + DE1865B2245C7A2B00F8AD70 /* EmailPasswordTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */; }; + DE1865B4245C92A600F8AD70 /* GoogleTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B3245C92A600F8AD70 /* GoogleTests.swift */; }; + DE1865B6245C95DA00F8AD70 /* Credentials.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B5245C95DA00F8AD70 /* Credentials.swift */; }; + DE1865B8245CC6FC00F8AD70 /* FacebookTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B7245CC6FC00F8AD70 /* FacebookTests.swift */; }; + DE800B4722A2F8AF00AC9A23 /* MainViewController+Custom.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1122A2F8AF00AC9A23 /* MainViewController+Custom.m */; }; + DE800B4822A2F8AF00AC9A23 /* SettingsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1222A2F8AF00AC9A23 /* SettingsViewController.m */; }; + DE800B4922A2F8AF00AC9A23 /* MainViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE800B1322A2F8AF00AC9A23 /* MainViewController.xib */; }; + DE800B4A22A2F8AF00AC9A23 /* GoogleAuthProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1422A2F8AF00AC9A23 /* GoogleAuthProvider.m */; }; + DE800B4B22A2F8AF00AC9A23 /* MainViewController+User.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1822A2F8AF00AC9A23 /* MainViewController+User.m */; }; + DE800B4C22A2F8AF00AC9A23 /* MainViewController+GameCenter.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1922A2F8AF00AC9A23 /* MainViewController+GameCenter.m */; }; + DE800B4D22A2F8AF00AC9A23 /* MainViewController+Phone.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1A22A2F8AF00AC9A23 /* MainViewController+Phone.m */; }; + DE800B4E22A2F8AF00AC9A23 /* UserTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1B22A2F8AF00AC9A23 /* UserTableViewCell.m */; }; + DE800B4F22A2F8AF00AC9A23 /* MainViewController+Facebook.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1C22A2F8AF00AC9A23 /* MainViewController+Facebook.m */; }; + DE800B5022A2F8AF00AC9A23 /* UIViewController+Alerts.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2022A2F8AF00AC9A23 /* UIViewController+Alerts.m */; }; + DE800B5122A2F8AF00AC9A23 /* MainViewController+Email.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2222A2F8AF00AC9A23 /* MainViewController+Email.m */; }; + DE800B5222A2F8AF00AC9A23 /* MainViewController+Auth.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2322A2F8AF00AC9A23 /* MainViewController+Auth.m */; }; + DE800B5422A2F8AF00AC9A23 /* UserInfoViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE800B2822A2F8AF00AC9A23 /* UserInfoViewController.xib */; }; + DE800B5522A2F8AF00AC9A23 /* MainViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2922A2F8AF00AC9A23 /* MainViewController.m */; }; + DE800B5622A2F8AF00AC9A23 /* MainViewController+AutoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2B22A2F8AF00AC9A23 /* MainViewController+AutoTests.m */; }; + DE800B5722A2F8AF00AC9A23 /* MainViewController+OOB.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2C22A2F8AF00AC9A23 /* MainViewController+OOB.m */; }; + DE800B5822A2F8AF00AC9A23 /* AppManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2D22A2F8AF00AC9A23 /* AppManager.m */; }; + DE800B5922A2F8AF00AC9A23 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2E22A2F8AF00AC9A23 /* main.m */; }; + DE800B5A22A2F8AF00AC9A23 /* MainViewController+App.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2F22A2F8AF00AC9A23 /* MainViewController+App.m */; }; + DE800B5B22A2F8AF00AC9A23 /* MainViewController+OAuth.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3122A2F8AF00AC9A23 /* MainViewController+OAuth.m */; }; + DE800B5C22A2F8AF00AC9A23 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = DE800B3222A2F8AF00AC9A23 /* Images.xcassets */; }; + DE800B5D22A2F8AF00AC9A23 /* UserInfoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3422A2F8AF00AC9A23 /* UserInfoViewController.m */; }; + DE800B5E22A2F8AF00AC9A23 /* StaticContentTableViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3622A2F8AF00AC9A23 /* StaticContentTableViewManager.m */; }; + DE800B5F22A2F8AF00AC9A23 /* MainViewController+Google.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3922A2F8AF00AC9A23 /* MainViewController+Google.m */; }; + DE800B6022A2F8AF00AC9A23 /* FacebookAuthProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3B22A2F8AF00AC9A23 /* FacebookAuthProvider.m */; }; + DE800B6122A2F8AF00AC9A23 /* ApplicationDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3C22A2F8AF00AC9A23 /* ApplicationDelegate.m */; }; + DE800B6222A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m */; }; + DE800B6322A2F8AF00AC9A23 /* SettingsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE800B4122A2F8AF00AC9A23 /* SettingsViewController.xib */; }; + DE800B6422A2F8AF00AC9A23 /* AuthProviders.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B4522A2F8AF00AC9A23 /* AuthProviders.m */; }; + DE800B6722A2FF7300AC9A23 /* GoogleService-Info_multi.plist in Resources */ = {isa = PBXBuildFile; fileRef = DE800B6522A2FF7300AC9A23 /* GoogleService-Info_multi.plist */; }; + DE800B6822A2FF7300AC9A23 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = DE800B6622A2FF7300AC9A23 /* GoogleService-Info.plist */; }; + DEBEF60E245247A0005E1A8F /* AccountInfoTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEBEF60D245247A0005E1A8F /* AccountInfoTests.swift */; }; + DED400B0243E56F500BF6D56 /* FacebookAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400A4243E56F500BF6D56 /* FacebookAuthTests.m */; }; + DED400B1243E56F500BF6D56 /* generate_refresh_token.sh in Resources */ = {isa = PBXBuildFile; fileRef = DED400A5243E56F500BF6D56 /* generate_refresh_token.sh */; }; + DED400B3243E56F500BF6D56 /* AnonymousAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400A8243E56F500BF6D56 /* AnonymousAuthTests.m */; }; + DED400B5243E56F500BF6D56 /* AccountInfoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AB243E56F500BF6D56 /* AccountInfoTests.m */; }; + DED400B6243E56F500BF6D56 /* EmailPasswordAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AC243E56F500BF6D56 /* EmailPasswordAuthTests.m */; }; + DED400B7243E56F500BF6D56 /* CustomAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AD243E56F500BF6D56 /* CustomAuthTests.m */; }; + DED400B8243E56F500BF6D56 /* GoogleAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AE243E56F500BF6D56 /* GoogleAuthTests.m */; }; + DED400B9243E56F500BF6D56 /* FIRAuthApiTestsBase.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AF243E56F500BF6D56 /* FIRAuthApiTestsBase.m */; }; + DED400C1243E571500BF6D56 /* VerifyIOSClientTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BB243E571500BF6D56 /* VerifyIOSClientTests.m */; }; + DED400C2243E571500BF6D56 /* BYOAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BC243E571500BF6D56 /* BYOAuthTests.m */; }; + DED400C3243E571500BF6D56 /* FIRAuthE2eTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */; }; + DED400C4243E571500BF6D56 /* FIRAuthE2eTestsBase.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */; }; + DEF68E952799B9970064CC92 /* SwiftAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEF68E942799B9970064CC92 /* SwiftAPI.swift */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + DE800B7622A5927C00AC9A23 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = DE800AEC22A2F87E00AC9A23 /* Project object */; + proxyType = 1; + remoteGlobalIDString = DE800AF322A2F87E00AC9A23; + remoteInfo = AuthSample; + }; + DE800B9A22A5BD1800AC9A23 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = DE800AEC22A2F87E00AC9A23 /* Project object */; + proxyType = 1; + remoteGlobalIDString = DE800AF322A2F87E00AC9A23; + remoteInfo = AuthSample; + }; + DEBEF6082450EA27005E1A8F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = DE800AEC22A2F87E00AC9A23 /* Project object */; + proxyType = 1; + remoteGlobalIDString = DE800AF322A2F87E00AC9A23; + remoteInfo = AuthSample; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + 0470AED2ED2D120262F08CCB /* Pods-SwiftApiTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SwiftApiTests.debug.xcconfig"; path = "Target Support Files/Pods-SwiftApiTests/Pods-SwiftApiTests.debug.xcconfig"; sourceTree = ""; }; + 19E444FF7D3AE620B0F4293A /* Pods_Auth_ApiTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Auth_ApiTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 1A7717341987080791B5A4C0 /* Pods-Auth_ApiTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Auth_ApiTests.debug.xcconfig"; path = "Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests.debug.xcconfig"; sourceTree = ""; }; + 1B9909B9159B2191A05906FA /* Pods_Auth_E2eTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Auth_E2eTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 2FF8EE500CF78004FC65C179 /* Pods-AuthSample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AuthSample.debug.xcconfig"; path = "Target Support Files/Pods-AuthSample/Pods-AuthSample.debug.xcconfig"; sourceTree = ""; }; + 400283E823EA254A0006A298 /* MainViewController+MultiFactor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+MultiFactor.h"; sourceTree = ""; }; + 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+MultiFactor.m"; sourceTree = ""; }; + 9E4DB36B019BA019C9EA4229 /* Pods-Auth_E2eTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Auth_E2eTests.debug.xcconfig"; path = "Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests.debug.xcconfig"; sourceTree = ""; }; + A1DE7ED770F906C5B9750C49 /* Pods-AuthSample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AuthSample.release.xcconfig"; path = "Target Support Files/Pods-AuthSample/Pods-AuthSample.release.xcconfig"; sourceTree = ""; }; + AF3816DA4B5B0385038F24E3 /* Pods-Auth_ApiTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Auth_ApiTests.release.xcconfig"; path = "Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests.release.xcconfig"; sourceTree = ""; }; + B5E2551BF842F02DF1A2937B /* Pods_SwiftApiTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_SwiftApiTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + B8F193D66088DE1B34480177 /* Pods-Auth_E2eTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Auth_E2eTests.release.xcconfig"; path = "Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests.release.xcconfig"; sourceTree = ""; }; + DE1865AB245B879B00F8AD70 /* TestsBase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TestsBase.swift; sourceTree = ""; }; + DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnonymousTests.swift; sourceTree = ""; }; + DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmailPasswordTests.swift; sourceTree = ""; }; + DE1865B3245C92A600F8AD70 /* GoogleTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GoogleTests.swift; sourceTree = ""; }; + DE1865B5245C95DA00F8AD70 /* Credentials.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Credentials.swift; sourceTree = ""; }; + DE1865B7245CC6FC00F8AD70 /* FacebookTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FacebookTests.swift; sourceTree = ""; }; + DE800AF422A2F87E00AC9A23 /* AuthSample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = AuthSample.app; sourceTree = BUILT_PRODUCTS_DIR; }; + DE800B0E22A2F8AF00AC9A23 /* AppManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppManager.h; sourceTree = ""; }; + DE800B0F22A2F8AF00AC9A23 /* MainViewController+AutoTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+AutoTests.h"; sourceTree = ""; }; + DE800B1022A2F8AF00AC9A23 /* MainViewController+OOB.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+OOB.h"; sourceTree = ""; }; + DE800B1122A2F8AF00AC9A23 /* MainViewController+Custom.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Custom.m"; sourceTree = ""; }; + DE800B1222A2F8AF00AC9A23 /* SettingsViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SettingsViewController.m; sourceTree = ""; }; + DE800B1322A2F8AF00AC9A23 /* MainViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MainViewController.xib; sourceTree = ""; }; + DE800B1422A2F8AF00AC9A23 /* GoogleAuthProvider.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GoogleAuthProvider.m; sourceTree = ""; }; + DE800B1522A2F8AF00AC9A23 /* UserInfoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserInfoViewController.h; sourceTree = ""; }; + DE800B1622A2F8AF00AC9A23 /* MainViewController+OAuth.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+OAuth.h"; sourceTree = ""; }; + DE800B1722A2F8AF00AC9A23 /* MainViewController+App.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+App.h"; sourceTree = ""; }; + DE800B1822A2F8AF00AC9A23 /* MainViewController+User.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+User.m"; sourceTree = ""; }; + DE800B1922A2F8AF00AC9A23 /* MainViewController+GameCenter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+GameCenter.m"; sourceTree = ""; }; + DE800B1A22A2F8AF00AC9A23 /* MainViewController+Phone.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Phone.m"; sourceTree = ""; }; + DE800B1B22A2F8AF00AC9A23 /* UserTableViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UserTableViewCell.m; sourceTree = ""; }; + DE800B1C22A2F8AF00AC9A23 /* MainViewController+Facebook.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Facebook.m"; sourceTree = ""; }; + DE800B1D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CustomTokenDataEntryViewController.h; sourceTree = ""; }; + DE800B1E22A2F8AF00AC9A23 /* FacebookAuthProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FacebookAuthProvider.h; sourceTree = ""; }; + DE800B1F22A2F8AF00AC9A23 /* ApplicationDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ApplicationDelegate.h; sourceTree = ""; }; + DE800B2022A2F8AF00AC9A23 /* UIViewController+Alerts.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIViewController+Alerts.m"; sourceTree = ""; }; + DE800B2122A2F8AF00AC9A23 /* MainViewController+Google.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Google.h"; sourceTree = ""; }; + DE800B2222A2F8AF00AC9A23 /* MainViewController+Email.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Email.m"; sourceTree = ""; }; + DE800B2322A2F8AF00AC9A23 /* MainViewController+Auth.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Auth.m"; sourceTree = ""; }; + DE800B2422A2F8AF00AC9A23 /* StaticContentTableViewManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StaticContentTableViewManager.h; sourceTree = ""; }; + DE800B2522A2F8AF00AC9A23 /* SampleTemplate.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = SampleTemplate.entitlements; sourceTree = ""; }; + DE800B2622A2F8AF00AC9A23 /* AuthProviders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthProviders.h; sourceTree = ""; }; + DE800B2722A2F8AF00AC9A23 /* ApplicationTemplate.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = ApplicationTemplate.plist; sourceTree = ""; }; + DE800B2822A2F8AF00AC9A23 /* UserInfoViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = UserInfoViewController.xib; sourceTree = ""; }; + DE800B2922A2F8AF00AC9A23 /* MainViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MainViewController.m; sourceTree = ""; }; + DE800B2A22A2F8AF00AC9A23 /* MainViewController+Custom.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Custom.h"; sourceTree = ""; }; + DE800B2B22A2F8AF00AC9A23 /* MainViewController+AutoTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+AutoTests.m"; sourceTree = ""; }; + DE800B2C22A2F8AF00AC9A23 /* MainViewController+OOB.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+OOB.m"; sourceTree = ""; }; + DE800B2D22A2F8AF00AC9A23 /* AppManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppManager.m; sourceTree = ""; }; + DE800B2E22A2F8AF00AC9A23 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + DE800B2F22A2F8AF00AC9A23 /* MainViewController+App.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+App.m"; sourceTree = ""; }; + DE800B3022A2F8AF00AC9A23 /* MainViewController+Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Internal.h"; sourceTree = ""; }; + DE800B3122A2F8AF00AC9A23 /* MainViewController+OAuth.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+OAuth.m"; sourceTree = ""; }; + DE800B3222A2F8AF00AC9A23 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; + DE800B3322A2F8AF00AC9A23 /* GoogleAuthProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GoogleAuthProvider.h; sourceTree = ""; }; + DE800B3422A2F8AF00AC9A23 /* UserInfoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UserInfoViewController.m; sourceTree = ""; }; + DE800B3522A2F8AF00AC9A23 /* SettingsViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SettingsViewController.h; sourceTree = ""; }; + DE800B3622A2F8AF00AC9A23 /* StaticContentTableViewManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StaticContentTableViewManager.m; sourceTree = ""; }; + DE800B3722A2F8AF00AC9A23 /* MainViewController+Email.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Email.h"; sourceTree = ""; }; + DE800B3822A2F8AF00AC9A23 /* MainViewController+Auth.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Auth.h"; sourceTree = ""; }; + DE800B3922A2F8AF00AC9A23 /* MainViewController+Google.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Google.m"; sourceTree = ""; }; + DE800B3A22A2F8AF00AC9A23 /* UIViewController+Alerts.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIViewController+Alerts.h"; sourceTree = ""; }; + DE800B3B22A2F8AF00AC9A23 /* FacebookAuthProvider.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FacebookAuthProvider.m; sourceTree = ""; }; + DE800B3C22A2F8AF00AC9A23 /* ApplicationDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ApplicationDelegate.m; sourceTree = ""; }; + DE800B3D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CustomTokenDataEntryViewController.m; sourceTree = ""; }; + DE800B3E22A2F8AF00AC9A23 /* MainViewController+Facebook.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Facebook.h"; sourceTree = ""; }; + DE800B3F22A2F8AF00AC9A23 /* MainViewController+Phone.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Phone.h"; sourceTree = ""; }; + DE800B4022A2F8AF00AC9A23 /* UserTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserTableViewCell.h; sourceTree = ""; }; + DE800B4122A2F8AF00AC9A23 /* SettingsViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = SettingsViewController.xib; sourceTree = ""; }; + DE800B4222A2F8AF00AC9A23 /* MainViewController+GameCenter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+GameCenter.h"; sourceTree = ""; }; + DE800B4322A2F8AF00AC9A23 /* MainViewController+User.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+User.h"; sourceTree = ""; }; + DE800B4422A2F8AF00AC9A23 /* MainViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MainViewController.h; sourceTree = ""; }; + DE800B4522A2F8AF00AC9A23 /* AuthProviders.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AuthProviders.m; sourceTree = ""; }; + DE800B4622A2F8AF00AC9A23 /* AuthCredentialsTemplate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentialsTemplate.h; sourceTree = ""; }; + DE800B6522A2FF7300AC9A23 /* GoogleService-Info_multi.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info_multi.plist"; sourceTree = ""; }; + DE800B6622A2FF7300AC9A23 /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = ""; }; + DE800B6922A2FF8700AC9A23 /* Application.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Application.plist; sourceTree = ""; }; + DE800B6A22A2FF8700AC9A23 /* Sample.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Sample.entitlements; sourceTree = ""; }; + DE800B6C22A2FFFF00AC9A23 /* AuthCredentials.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentials.h; sourceTree = ""; }; + DE800B7122A5927C00AC9A23 /* Auth_ApiTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Auth_ApiTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + DE800B9522A5BD1800AC9A23 /* Auth_E2eTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Auth_E2eTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + DEBEF6032450EA27005E1A8F /* SwiftApiTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SwiftApiTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + DEBEF6072450EA27005E1A8F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + DEBEF60D245247A0005E1A8F /* AccountInfoTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountInfoTests.swift; sourceTree = ""; }; + DED400A3243E56F500BF6D56 /* AuthCredentials.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentials.h; sourceTree = ""; }; + DED400A4243E56F500BF6D56 /* FacebookAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FacebookAuthTests.m; sourceTree = ""; }; + DED400A5243E56F500BF6D56 /* generate_refresh_token.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = generate_refresh_token.sh; sourceTree = ""; }; + DED400A6243E56F500BF6D56 /* PhoneMultiFactorTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PhoneMultiFactorTests.swift; sourceTree = ""; }; + DED400A7243E56F500BF6D56 /* AuthCredentialsTemplate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentialsTemplate.h; sourceTree = ""; }; + DED400A8243E56F500BF6D56 /* AnonymousAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AnonymousAuthTests.m; sourceTree = ""; }; + DED400A9243E56F500BF6D56 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + DED400AA243E56F500BF6D56 /* FIRAuthApiTestsBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FIRAuthApiTestsBase.h; sourceTree = ""; }; + DED400AB243E56F500BF6D56 /* AccountInfoTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AccountInfoTests.m; sourceTree = ""; }; + DED400AC243E56F500BF6D56 /* EmailPasswordAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = EmailPasswordAuthTests.m; sourceTree = ""; }; + DED400AD243E56F500BF6D56 /* CustomAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CustomAuthTests.m; sourceTree = ""; }; + DED400AE243E56F500BF6D56 /* GoogleAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GoogleAuthTests.m; sourceTree = ""; }; + DED400AF243E56F500BF6D56 /* FIRAuthApiTestsBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthApiTestsBase.m; sourceTree = ""; }; + DED400BA243E571500BF6D56 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + DED400BB243E571500BF6D56 /* VerifyIOSClientTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = VerifyIOSClientTests.m; sourceTree = ""; }; + DED400BC243E571500BF6D56 /* BYOAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BYOAuthTests.m; sourceTree = ""; }; + DED400BD243E571500BF6D56 /* FIRAuthE2eTestsBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FIRAuthE2eTestsBase.h; sourceTree = ""; }; + DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthE2eTests.m; sourceTree = ""; }; + DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthE2eTestsBase.m; sourceTree = ""; }; + DEF68E942799B9970064CC92 /* SwiftAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftAPI.swift; sourceTree = ""; }; + DFA27C5857B4273250BE0B77 /* Pods-SwiftApiTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SwiftApiTests.release.xcconfig"; path = "Target Support Files/Pods-SwiftApiTests/Pods-SwiftApiTests.release.xcconfig"; sourceTree = ""; }; + E782F49011F2F27C9411D056 /* Pods_AuthSample.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_AuthSample.framework; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + DE800AF122A2F87E00AC9A23 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 731F70C06E1001F8313E21BE /* Pods_AuthSample.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE800B6E22A5927C00AC9A23 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 5EDCF9BC38AB1472B862D79B /* Pods_Auth_ApiTests.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE800B9222A5BD1800AC9A23 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 2D9368346D8FA940FA2BD392 /* Pods_Auth_E2eTests.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DEBEF6002450EA27005E1A8F /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 7350C60D85615F0F8199BCAA /* Pods_SwiftApiTests.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + C4C05E1CFDE4CC7F68A7B4F1 /* Frameworks */ = { + isa = PBXGroup; + children = ( + E782F49011F2F27C9411D056 /* Pods_AuthSample.framework */, + 19E444FF7D3AE620B0F4293A /* Pods_Auth_ApiTests.framework */, + 1B9909B9159B2191A05906FA /* Pods_Auth_E2eTests.framework */, + B5E2551BF842F02DF1A2937B /* Pods_SwiftApiTests.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; + C8C0A17357FAC82788BE1349 /* Pods */ = { + isa = PBXGroup; + children = ( + 2FF8EE500CF78004FC65C179 /* Pods-AuthSample.debug.xcconfig */, + A1DE7ED770F906C5B9750C49 /* Pods-AuthSample.release.xcconfig */, + 1A7717341987080791B5A4C0 /* Pods-Auth_ApiTests.debug.xcconfig */, + AF3816DA4B5B0385038F24E3 /* Pods-Auth_ApiTests.release.xcconfig */, + 9E4DB36B019BA019C9EA4229 /* Pods-Auth_E2eTests.debug.xcconfig */, + B8F193D66088DE1B34480177 /* Pods-Auth_E2eTests.release.xcconfig */, + 0470AED2ED2D120262F08CCB /* Pods-SwiftApiTests.debug.xcconfig */, + DFA27C5857B4273250BE0B77 /* Pods-SwiftApiTests.release.xcconfig */, + ); + path = Pods; + sourceTree = ""; + }; + DE800AEB22A2F87E00AC9A23 = { + isa = PBXGroup; + children = ( + DE800B0D22A2F8AF00AC9A23 /* Sample */, + DE800B7222A5927C00AC9A23 /* Auth_ApiTests */, + DE800B9622A5BD1800AC9A23 /* E2eTests */, + DEBEF6042450EA27005E1A8F /* SwiftApiTests */, + DE800AF522A2F87E00AC9A23 /* Products */, + C8C0A17357FAC82788BE1349 /* Pods */, + C4C05E1CFDE4CC7F68A7B4F1 /* Frameworks */, + ); + sourceTree = ""; + }; + DE800AF522A2F87E00AC9A23 /* Products */ = { + isa = PBXGroup; + children = ( + DE800AF422A2F87E00AC9A23 /* AuthSample.app */, + DE800B7122A5927C00AC9A23 /* Auth_ApiTests.xctest */, + DE800B9522A5BD1800AC9A23 /* Auth_E2eTests.xctest */, + DEBEF6032450EA27005E1A8F /* SwiftApiTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + DE800B0D22A2F8AF00AC9A23 /* Sample */ = { + isa = PBXGroup; + children = ( + DE800B6922A2FF8700AC9A23 /* Application.plist */, + DE800B1F22A2F8AF00AC9A23 /* ApplicationDelegate.h */, + DE800B3C22A2F8AF00AC9A23 /* ApplicationDelegate.m */, + DE800B2722A2F8AF00AC9A23 /* ApplicationTemplate.plist */, + DE800B0E22A2F8AF00AC9A23 /* AppManager.h */, + DE800B2D22A2F8AF00AC9A23 /* AppManager.m */, + DE800B6C22A2FFFF00AC9A23 /* AuthCredentials.h */, + DE800B4622A2F8AF00AC9A23 /* AuthCredentialsTemplate.h */, + DE800B2622A2F8AF00AC9A23 /* AuthProviders.h */, + DE800B4522A2F8AF00AC9A23 /* AuthProviders.m */, + DE800B1D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.h */, + DE800B3D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m */, + DE800B1E22A2F8AF00AC9A23 /* FacebookAuthProvider.h */, + DE800B3B22A2F8AF00AC9A23 /* FacebookAuthProvider.m */, + DE800B3322A2F8AF00AC9A23 /* GoogleAuthProvider.h */, + DE800B1422A2F8AF00AC9A23 /* GoogleAuthProvider.m */, + DE800B6522A2FF7300AC9A23 /* GoogleService-Info_multi.plist */, + DE800B6622A2FF7300AC9A23 /* GoogleService-Info.plist */, + DE800B3222A2F8AF00AC9A23 /* Images.xcassets */, + DE800B2E22A2F8AF00AC9A23 /* main.m */, + DE800B4422A2F8AF00AC9A23 /* MainViewController.h */, + DE800B2922A2F8AF00AC9A23 /* MainViewController.m */, + DE800B1322A2F8AF00AC9A23 /* MainViewController.xib */, + DE800B1722A2F8AF00AC9A23 /* MainViewController+App.h */, + DE800B2F22A2F8AF00AC9A23 /* MainViewController+App.m */, + DE800B3822A2F8AF00AC9A23 /* MainViewController+Auth.h */, + DE800B2322A2F8AF00AC9A23 /* MainViewController+Auth.m */, + DE800B0F22A2F8AF00AC9A23 /* MainViewController+AutoTests.h */, + DE800B2B22A2F8AF00AC9A23 /* MainViewController+AutoTests.m */, + DE800B2A22A2F8AF00AC9A23 /* MainViewController+Custom.h */, + DE800B1122A2F8AF00AC9A23 /* MainViewController+Custom.m */, + DE800B3722A2F8AF00AC9A23 /* MainViewController+Email.h */, + DE800B2222A2F8AF00AC9A23 /* MainViewController+Email.m */, + DE800B3E22A2F8AF00AC9A23 /* MainViewController+Facebook.h */, + DE800B1C22A2F8AF00AC9A23 /* MainViewController+Facebook.m */, + DE800B4222A2F8AF00AC9A23 /* MainViewController+GameCenter.h */, + DE800B1922A2F8AF00AC9A23 /* MainViewController+GameCenter.m */, + DE800B2122A2F8AF00AC9A23 /* MainViewController+Google.h */, + DE800B3922A2F8AF00AC9A23 /* MainViewController+Google.m */, + DE800B3022A2F8AF00AC9A23 /* MainViewController+Internal.h */, + 400283E823EA254A0006A298 /* MainViewController+MultiFactor.h */, + 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */, + DE800B1622A2F8AF00AC9A23 /* MainViewController+OAuth.h */, + DE800B3122A2F8AF00AC9A23 /* MainViewController+OAuth.m */, + DE800B1022A2F8AF00AC9A23 /* MainViewController+OOB.h */, + DE800B2C22A2F8AF00AC9A23 /* MainViewController+OOB.m */, + DE800B3F22A2F8AF00AC9A23 /* MainViewController+Phone.h */, + DE800B1A22A2F8AF00AC9A23 /* MainViewController+Phone.m */, + DE800B4322A2F8AF00AC9A23 /* MainViewController+User.h */, + DE800B1822A2F8AF00AC9A23 /* MainViewController+User.m */, + DE800B6A22A2FF8700AC9A23 /* Sample.entitlements */, + DE800B2522A2F8AF00AC9A23 /* SampleTemplate.entitlements */, + DE800B3522A2F8AF00AC9A23 /* SettingsViewController.h */, + DE800B1222A2F8AF00AC9A23 /* SettingsViewController.m */, + DE800B4122A2F8AF00AC9A23 /* SettingsViewController.xib */, + DE800B2422A2F8AF00AC9A23 /* StaticContentTableViewManager.h */, + DE800B3622A2F8AF00AC9A23 /* StaticContentTableViewManager.m */, + DE800B3A22A2F8AF00AC9A23 /* UIViewController+Alerts.h */, + DE800B2022A2F8AF00AC9A23 /* UIViewController+Alerts.m */, + DE800B1522A2F8AF00AC9A23 /* UserInfoViewController.h */, + DE800B3422A2F8AF00AC9A23 /* UserInfoViewController.m */, + DE800B2822A2F8AF00AC9A23 /* UserInfoViewController.xib */, + DE800B4022A2F8AF00AC9A23 /* UserTableViewCell.h */, + DE800B1B22A2F8AF00AC9A23 /* UserTableViewCell.m */, + ); + path = Sample; + sourceTree = SOURCE_ROOT; + }; + DE800B7222A5927C00AC9A23 /* Auth_ApiTests */ = { + isa = PBXGroup; + children = ( + DED400AB243E56F500BF6D56 /* AccountInfoTests.m */, + DED400A8243E56F500BF6D56 /* AnonymousAuthTests.m */, + DED400A3243E56F500BF6D56 /* AuthCredentials.h */, + DED400A7243E56F500BF6D56 /* AuthCredentialsTemplate.h */, + DED400AD243E56F500BF6D56 /* CustomAuthTests.m */, + DED400AC243E56F500BF6D56 /* EmailPasswordAuthTests.m */, + DED400A4243E56F500BF6D56 /* FacebookAuthTests.m */, + DED400AA243E56F500BF6D56 /* FIRAuthApiTestsBase.h */, + DED400AF243E56F500BF6D56 /* FIRAuthApiTestsBase.m */, + DED400A5243E56F500BF6D56 /* generate_refresh_token.sh */, + DED400AE243E56F500BF6D56 /* GoogleAuthTests.m */, + DED400A9243E56F500BF6D56 /* Info.plist */, + DED400A6243E56F500BF6D56 /* PhoneMultiFactorTests.swift */, + ); + name = Auth_ApiTests; + path = ApiTests; + sourceTree = SOURCE_ROOT; + }; + DE800B9622A5BD1800AC9A23 /* E2eTests */ = { + isa = PBXGroup; + children = ( + DED400BC243E571500BF6D56 /* BYOAuthTests.m */, + DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */, + DED400BD243E571500BF6D56 /* FIRAuthE2eTestsBase.h */, + DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */, + DED400BA243E571500BF6D56 /* Info.plist */, + DED400BB243E571500BF6D56 /* VerifyIOSClientTests.m */, + ); + path = E2eTests; + sourceTree = SOURCE_ROOT; + }; + DEBEF6042450EA27005E1A8F /* SwiftApiTests */ = { + isa = PBXGroup; + children = ( + DEBEF6072450EA27005E1A8F /* Info.plist */, + DEBEF60D245247A0005E1A8F /* AccountInfoTests.swift */, + DE1865AB245B879B00F8AD70 /* TestsBase.swift */, + DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */, + DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */, + DE1865B3245C92A600F8AD70 /* GoogleTests.swift */, + DE1865B5245C95DA00F8AD70 /* Credentials.swift */, + DE1865B7245CC6FC00F8AD70 /* FacebookTests.swift */, + DEF68E942799B9970064CC92 /* SwiftAPI.swift */, + ); + path = SwiftApiTests; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + DE800AF322A2F87E00AC9A23 /* AuthSample */ = { + isa = PBXNativeTarget; + buildConfigurationList = DE800B0A22A2F88000AC9A23 /* Build configuration list for PBXNativeTarget "AuthSample" */; + buildPhases = ( + 6E443E69F97F9D8B522B6BD2 /* [CP] Check Pods Manifest.lock */, + DE800AF022A2F87E00AC9A23 /* Sources */, + DE800AF122A2F87E00AC9A23 /* Frameworks */, + DE800AF222A2F87E00AC9A23 /* Resources */, + 3B56363253287110A0B8A8B7 /* [CP] Embed Pods Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = AuthSample; + productName = AuthSample; + productReference = DE800AF422A2F87E00AC9A23 /* AuthSample.app */; + productType = "com.apple.product-type.application"; + }; + DE800B7022A5927C00AC9A23 /* Auth_ApiTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = DE800B7A22A5927C00AC9A23 /* Build configuration list for PBXNativeTarget "Auth_ApiTests" */; + buildPhases = ( + 398665313C934F44F17AAD71 /* [CP] Check Pods Manifest.lock */, + DE800B6D22A5927C00AC9A23 /* Sources */, + DE800B6E22A5927C00AC9A23 /* Frameworks */, + DE800B6F22A5927C00AC9A23 /* Resources */, + EBE4C98CFE4D95E43BEE3119 /* [CP] Embed Pods Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + DE800B7722A5927C00AC9A23 /* PBXTargetDependency */, + ); + name = Auth_ApiTests; + productName = Auth_ApiTests; + productReference = DE800B7122A5927C00AC9A23 /* Auth_ApiTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + DE800B9422A5BD1800AC9A23 /* Auth_E2eTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = DE800B9C22A5BD1800AC9A23 /* Build configuration list for PBXNativeTarget "Auth_E2eTests" */; + buildPhases = ( + EC843A773540DCA96200DC21 /* [CP] Check Pods Manifest.lock */, + DE800B9122A5BD1800AC9A23 /* Sources */, + DE800B9222A5BD1800AC9A23 /* Frameworks */, + DE800B9322A5BD1800AC9A23 /* Resources */, + B62EC7DEFEC79BE35B83BF6F /* [CP] Embed Pods Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + DE800B9B22A5BD1800AC9A23 /* PBXTargetDependency */, + ); + name = Auth_E2eTests; + productName = Auth_E2eTests; + productReference = DE800B9522A5BD1800AC9A23 /* Auth_E2eTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + DEBEF6022450EA27005E1A8F /* SwiftApiTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = DEBEF60A2450EA27005E1A8F /* Build configuration list for PBXNativeTarget "SwiftApiTests" */; + buildPhases = ( + 5B47162ED76807737D484CD1 /* [CP] Check Pods Manifest.lock */, + DEBEF5FF2450EA27005E1A8F /* Sources */, + DEBEF6002450EA27005E1A8F /* Frameworks */, + DEBEF6012450EA27005E1A8F /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + DEBEF6092450EA27005E1A8F /* PBXTargetDependency */, + ); + name = SwiftApiTests; + productName = SwiftApiTests; + productReference = DEBEF6032450EA27005E1A8F /* SwiftApiTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + DE800AEC22A2F87E00AC9A23 /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 1140; + LastUpgradeCheck = 1340; + ORGANIZATIONNAME = Firebase; + TargetAttributes = { + DE800AF322A2F87E00AC9A23 = { + CreatedOnToolsVersion = 10.2; + LastSwiftMigration = 1140; + }; + DE800B7022A5927C00AC9A23 = { + CreatedOnToolsVersion = 10.2; + LastSwiftMigration = 1020; + TestTargetID = DE800AF322A2F87E00AC9A23; + }; + DE800B9422A5BD1800AC9A23 = { + CreatedOnToolsVersion = 10.2; + TestTargetID = DE800AF322A2F87E00AC9A23; + }; + DEBEF6022450EA27005E1A8F = { + CreatedOnToolsVersion = 11.4.1; + TestTargetID = DE800AF322A2F87E00AC9A23; + }; + }; + }; + buildConfigurationList = DE800AEF22A2F87E00AC9A23 /* Build configuration list for PBXProject "AuthSample" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = DE800AEB22A2F87E00AC9A23; + productRefGroup = DE800AF522A2F87E00AC9A23 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + DE800AF322A2F87E00AC9A23 /* AuthSample */, + DE800B7022A5927C00AC9A23 /* Auth_ApiTests */, + DE800B9422A5BD1800AC9A23 /* Auth_E2eTests */, + DEBEF6022450EA27005E1A8F /* SwiftApiTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + DE800AF222A2F87E00AC9A23 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DE800B5422A2F8AF00AC9A23 /* UserInfoViewController.xib in Resources */, + DE800B5C22A2F8AF00AC9A23 /* Images.xcassets in Resources */, + DE800B4922A2F8AF00AC9A23 /* MainViewController.xib in Resources */, + DE800B6722A2FF7300AC9A23 /* GoogleService-Info_multi.plist in Resources */, + DE800B6322A2F8AF00AC9A23 /* SettingsViewController.xib in Resources */, + DE800B6822A2FF7300AC9A23 /* GoogleService-Info.plist in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE800B6F22A5927C00AC9A23 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DED400B1243E56F500BF6D56 /* generate_refresh_token.sh in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE800B9322A5BD1800AC9A23 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DEBEF6012450EA27005E1A8F /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 398665313C934F44F17AAD71 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Auth_ApiTests-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + 3B56363253287110A0B8A8B7 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-AuthSample/Pods-AuthSample-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-AuthSample/Pods-AuthSample-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-AuthSample/Pods-AuthSample-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + 5B47162ED76807737D484CD1 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-SwiftApiTests-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + 6E443E69F97F9D8B522B6BD2 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-AuthSample-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + B62EC7DEFEC79BE35B83BF6F /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + EBE4C98CFE4D95E43BEE3119 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + EC843A773540DCA96200DC21 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Auth_E2eTests-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + DE800AF022A2F87E00AC9A23 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DE800B5722A2F8AF00AC9A23 /* MainViewController+OOB.m in Sources */, + DE800B4E22A2F8AF00AC9A23 /* UserTableViewCell.m in Sources */, + DE800B6422A2F8AF00AC9A23 /* AuthProviders.m in Sources */, + DE800B4F22A2F8AF00AC9A23 /* MainViewController+Facebook.m in Sources */, + DE800B4D22A2F8AF00AC9A23 /* MainViewController+Phone.m in Sources */, + DE800B4722A2F8AF00AC9A23 /* MainViewController+Custom.m in Sources */, + 400283EA23EA254B0006A298 /* MainViewController+MultiFactor.m in Sources */, + DE800B5A22A2F8AF00AC9A23 /* MainViewController+App.m in Sources */, + DE800B6222A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m in Sources */, + DE800B6122A2F8AF00AC9A23 /* ApplicationDelegate.m in Sources */, + DE800B4A22A2F8AF00AC9A23 /* GoogleAuthProvider.m in Sources */, + DE800B5B22A2F8AF00AC9A23 /* MainViewController+OAuth.m in Sources */, + DE800B6022A2F8AF00AC9A23 /* FacebookAuthProvider.m in Sources */, + DE800B5922A2F8AF00AC9A23 /* main.m in Sources */, + DE800B5222A2F8AF00AC9A23 /* MainViewController+Auth.m in Sources */, + DE800B5F22A2F8AF00AC9A23 /* MainViewController+Google.m in Sources */, + DE800B5D22A2F8AF00AC9A23 /* UserInfoViewController.m in Sources */, + DE800B4B22A2F8AF00AC9A23 /* MainViewController+User.m in Sources */, + DE800B5522A2F8AF00AC9A23 /* MainViewController.m in Sources */, + DE800B5122A2F8AF00AC9A23 /* MainViewController+Email.m in Sources */, + DE800B5022A2F8AF00AC9A23 /* UIViewController+Alerts.m in Sources */, + DE800B5E22A2F8AF00AC9A23 /* StaticContentTableViewManager.m in Sources */, + DE800B4C22A2F8AF00AC9A23 /* MainViewController+GameCenter.m in Sources */, + DE800B4822A2F8AF00AC9A23 /* SettingsViewController.m in Sources */, + DE800B5622A2F8AF00AC9A23 /* MainViewController+AutoTests.m in Sources */, + DE800B5822A2F8AF00AC9A23 /* AppManager.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE800B6D22A5927C00AC9A23 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DED400B0243E56F500BF6D56 /* FacebookAuthTests.m in Sources */, + DED400B5243E56F500BF6D56 /* AccountInfoTests.m in Sources */, + DED400B6243E56F500BF6D56 /* EmailPasswordAuthTests.m in Sources */, + DED400B9243E56F500BF6D56 /* FIRAuthApiTestsBase.m in Sources */, + DED400B3243E56F500BF6D56 /* AnonymousAuthTests.m in Sources */, + DED400B7243E56F500BF6D56 /* CustomAuthTests.m in Sources */, + DED400B8243E56F500BF6D56 /* GoogleAuthTests.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE800B9122A5BD1800AC9A23 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DED400C2243E571500BF6D56 /* BYOAuthTests.m in Sources */, + DED400C4243E571500BF6D56 /* FIRAuthE2eTestsBase.m in Sources */, + DED400C1243E571500BF6D56 /* VerifyIOSClientTests.m in Sources */, + DED400C3243E571500BF6D56 /* FIRAuthE2eTests.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DEBEF5FF2450EA27005E1A8F /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DEF68E952799B9970064CC92 /* SwiftAPI.swift in Sources */, + DE1865B4245C92A600F8AD70 /* GoogleTests.swift in Sources */, + DE1865AE245B8A1400F8AD70 /* AnonymousTests.swift in Sources */, + DE1865B8245CC6FC00F8AD70 /* FacebookTests.swift in Sources */, + DE1865B6245C95DA00F8AD70 /* Credentials.swift in Sources */, + DE1865B2245C7A2B00F8AD70 /* EmailPasswordTests.swift in Sources */, + DE1865AC245B879B00F8AD70 /* TestsBase.swift in Sources */, + DEBEF60E245247A0005E1A8F /* AccountInfoTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + DE800B7722A5927C00AC9A23 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = DE800AF322A2F87E00AC9A23 /* AuthSample */; + targetProxy = DE800B7622A5927C00AC9A23 /* PBXContainerItemProxy */; + }; + DE800B9B22A5BD1800AC9A23 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = DE800AF322A2F87E00AC9A23 /* AuthSample */; + targetProxy = DE800B9A22A5BD1800AC9A23 /* PBXContainerItemProxy */; + }; + DEBEF6092450EA27005E1A8F /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = DE800AF322A2F87E00AC9A23 /* AuthSample */; + targetProxy = DEBEF6082450EA27005E1A8F /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin XCBuildConfiguration section */ + DE800B0822A2F88000AC9A23 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.1; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + }; + name = Debug; + }; + DE800B0922A2F88000AC9A23 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.1; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + DE800B0B22A2F88000AC9A23 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 2FF8EE500CF78004FC65C179 /* Pods-AuthSample.debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Sample/Sample.entitlements; + CODE_SIGN_STYLE = Automatic; + "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = ""; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "${SRCROOT}/../../..", + ); + INFOPLIST_FILE = Sample/Application.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.firebase.auth1; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + DE800B0C22A2F88000AC9A23 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = A1DE7ED770F906C5B9750C49 /* Pods-AuthSample.release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Sample/Sample.entitlements; + CODE_SIGN_STYLE = Automatic; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "${SRCROOT}/../../..", + ); + INFOPLIST_FILE = Sample/Application.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.firebase.auth1; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; + DE800B7822A5927C00AC9A23 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 1A7717341987080791B5A4C0 /* Pods-Auth_ApiTests.debug.xcconfig */; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = ApiTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-ApiTests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "../ApiTests/Auth_ApiTests-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; + }; + name = Debug; + }; + DE800B7922A5927C00AC9A23 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = AF3816DA4B5B0385038F24E3 /* Pods-Auth_ApiTests.release.xcconfig */; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = ApiTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-ApiTests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "../ApiTests/Auth_ApiTests-Bridging-Header.h"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; + }; + name = Release; + }; + DE800B9D22A5BD1800AC9A23 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9E4DB36B019BA019C9EA4229 /* Pods-Auth_E2eTests.debug.xcconfig */; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = E2eTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-E2eTests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; + }; + name = Debug; + }; + DE800B9E22A5BD1800AC9A23 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = B8F193D66088DE1B34480177 /* Pods-Auth_E2eTests.release.xcconfig */; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = E2eTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-E2eTests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; + }; + name = Release; + }; + DEBEF60B2450EA27005E1A8F /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 0470AED2ED2D120262F08CCB /* Pods-SwiftApiTests.debug.xcconfig */; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = SwiftApiTests/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.1; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.google.firebase.SwiftApiTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; + }; + name = Debug; + }; + DEBEF60C2450EA27005E1A8F /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = DFA27C5857B4273250BE0B77 /* Pods-SwiftApiTests.release.xcconfig */; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = SwiftApiTests/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.1; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.google.firebase.SwiftApiTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + DE800AEF22A2F87E00AC9A23 /* Build configuration list for PBXProject "AuthSample" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + DE800B0822A2F88000AC9A23 /* Debug */, + DE800B0922A2F88000AC9A23 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + DE800B0A22A2F88000AC9A23 /* Build configuration list for PBXNativeTarget "AuthSample" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + DE800B0B22A2F88000AC9A23 /* Debug */, + DE800B0C22A2F88000AC9A23 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + DE800B7A22A5927C00AC9A23 /* Build configuration list for PBXNativeTarget "Auth_ApiTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + DE800B7822A5927C00AC9A23 /* Debug */, + DE800B7922A5927C00AC9A23 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + DE800B9C22A5BD1800AC9A23 /* Build configuration list for PBXNativeTarget "Auth_E2eTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + DE800B9D22A5BD1800AC9A23 /* Debug */, + DE800B9E22A5BD1800AC9A23 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + DEBEF60A2450EA27005E1A8F /* Build configuration list for PBXNativeTarget "SwiftApiTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + DEBEF60B2450EA27005E1A8F /* Debug */, + DEBEF60C2450EA27005E1A8F /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = DE800AEC22A2F87E00AC9A23 /* Project object */; +} diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/AuthSample.xcscheme b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/AuthSample.xcscheme new file mode 100644 index 00000000000..51a1848207c --- /dev/null +++ b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/AuthSample.xcscheme @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_ApiTests.xcscheme b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_ApiTests.xcscheme new file mode 100644 index 00000000000..df76cae1734 --- /dev/null +++ b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_ApiTests.xcscheme @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_E2eTests.xcscheme b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_E2eTests.xcscheme new file mode 100644 index 00000000000..e168a7c0c44 --- /dev/null +++ b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_E2eTests.xcscheme @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/SwiftApiTests.xcscheme b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/SwiftApiTests.xcscheme new file mode 100644 index 00000000000..d0da96a31bd --- /dev/null +++ b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/SwiftApiTests.xcscheme @@ -0,0 +1,68 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + From 8c539288d2a3c2a4d54e230725a41cb89c4966b7 Mon Sep 17 00:00:00 2001 From: Yvonne Cheng Date: Mon, 8 Aug 2022 21:29:14 -0700 Subject: [PATCH 05/23] remove changes in AuthSample 1/5 --- .../AuthSample.xcodeproj/project.pbxproj | 2036 ++++++++--------- 1 file changed, 913 insertions(+), 1123 deletions(-) diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj index e4e039306ca..ba80986cd46 100644 --- a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj +++ b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj @@ -1,1162 +1,952 @@ // !$*UTF8*$! { - archiveVersion = 1; - classes = { - }; - objectVersion = 51; - objects = { + archiveVersion = 1; + classes = { + }; + objectVersion = 50; + objects = { /* Begin PBXBuildFile section */ - 2D9368346D8FA940FA2BD392 /* Pods_Auth_E2eTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1B9909B9159B2191A05906FA /* Pods_Auth_E2eTests.framework */; }; - 400283EA23EA254B0006A298 /* MainViewController+MultiFactor.m in Sources */ = {isa = PBXBuildFile; fileRef = 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */; }; - 5EDCF9BC38AB1472B862D79B /* Pods_Auth_ApiTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 19E444FF7D3AE620B0F4293A /* Pods_Auth_ApiTests.framework */; }; - 731F70C06E1001F8313E21BE /* Pods_AuthSample.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E782F49011F2F27C9411D056 /* Pods_AuthSample.framework */; }; - 7350C60D85615F0F8199BCAA /* Pods_SwiftApiTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B5E2551BF842F02DF1A2937B /* Pods_SwiftApiTests.framework */; }; - DE1865AC245B879B00F8AD70 /* TestsBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865AB245B879B00F8AD70 /* TestsBase.swift */; }; - DE1865AE245B8A1400F8AD70 /* AnonymousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */; }; - DE1865B2245C7A2B00F8AD70 /* EmailPasswordTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */; }; - DE1865B4245C92A600F8AD70 /* GoogleTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B3245C92A600F8AD70 /* GoogleTests.swift */; }; - DE1865B6245C95DA00F8AD70 /* Credentials.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B5245C95DA00F8AD70 /* Credentials.swift */; }; - DE1865B8245CC6FC00F8AD70 /* FacebookTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B7245CC6FC00F8AD70 /* FacebookTests.swift */; }; - DE800B4722A2F8AF00AC9A23 /* MainViewController+Custom.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1122A2F8AF00AC9A23 /* MainViewController+Custom.m */; }; - DE800B4822A2F8AF00AC9A23 /* SettingsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1222A2F8AF00AC9A23 /* SettingsViewController.m */; }; - DE800B4922A2F8AF00AC9A23 /* MainViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE800B1322A2F8AF00AC9A23 /* MainViewController.xib */; }; - DE800B4A22A2F8AF00AC9A23 /* GoogleAuthProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1422A2F8AF00AC9A23 /* GoogleAuthProvider.m */; }; - DE800B4B22A2F8AF00AC9A23 /* MainViewController+User.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1822A2F8AF00AC9A23 /* MainViewController+User.m */; }; - DE800B4C22A2F8AF00AC9A23 /* MainViewController+GameCenter.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1922A2F8AF00AC9A23 /* MainViewController+GameCenter.m */; }; - DE800B4D22A2F8AF00AC9A23 /* MainViewController+Phone.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1A22A2F8AF00AC9A23 /* MainViewController+Phone.m */; }; - DE800B4E22A2F8AF00AC9A23 /* UserTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1B22A2F8AF00AC9A23 /* UserTableViewCell.m */; }; - DE800B4F22A2F8AF00AC9A23 /* MainViewController+Facebook.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1C22A2F8AF00AC9A23 /* MainViewController+Facebook.m */; }; - DE800B5022A2F8AF00AC9A23 /* UIViewController+Alerts.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2022A2F8AF00AC9A23 /* UIViewController+Alerts.m */; }; - DE800B5122A2F8AF00AC9A23 /* MainViewController+Email.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2222A2F8AF00AC9A23 /* MainViewController+Email.m */; }; - DE800B5222A2F8AF00AC9A23 /* MainViewController+Auth.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2322A2F8AF00AC9A23 /* MainViewController+Auth.m */; }; - DE800B5422A2F8AF00AC9A23 /* UserInfoViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE800B2822A2F8AF00AC9A23 /* UserInfoViewController.xib */; }; - DE800B5522A2F8AF00AC9A23 /* MainViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2922A2F8AF00AC9A23 /* MainViewController.m */; }; - DE800B5622A2F8AF00AC9A23 /* MainViewController+AutoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2B22A2F8AF00AC9A23 /* MainViewController+AutoTests.m */; }; - DE800B5722A2F8AF00AC9A23 /* MainViewController+OOB.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2C22A2F8AF00AC9A23 /* MainViewController+OOB.m */; }; - DE800B5822A2F8AF00AC9A23 /* AppManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2D22A2F8AF00AC9A23 /* AppManager.m */; }; - DE800B5922A2F8AF00AC9A23 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2E22A2F8AF00AC9A23 /* main.m */; }; - DE800B5A22A2F8AF00AC9A23 /* MainViewController+App.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2F22A2F8AF00AC9A23 /* MainViewController+App.m */; }; - DE800B5B22A2F8AF00AC9A23 /* MainViewController+OAuth.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3122A2F8AF00AC9A23 /* MainViewController+OAuth.m */; }; - DE800B5C22A2F8AF00AC9A23 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = DE800B3222A2F8AF00AC9A23 /* Images.xcassets */; }; - DE800B5D22A2F8AF00AC9A23 /* UserInfoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3422A2F8AF00AC9A23 /* UserInfoViewController.m */; }; - DE800B5E22A2F8AF00AC9A23 /* StaticContentTableViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3622A2F8AF00AC9A23 /* StaticContentTableViewManager.m */; }; - DE800B5F22A2F8AF00AC9A23 /* MainViewController+Google.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3922A2F8AF00AC9A23 /* MainViewController+Google.m */; }; - DE800B6022A2F8AF00AC9A23 /* FacebookAuthProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3B22A2F8AF00AC9A23 /* FacebookAuthProvider.m */; }; - DE800B6122A2F8AF00AC9A23 /* ApplicationDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3C22A2F8AF00AC9A23 /* ApplicationDelegate.m */; }; - DE800B6222A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m */; }; - DE800B6322A2F8AF00AC9A23 /* SettingsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE800B4122A2F8AF00AC9A23 /* SettingsViewController.xib */; }; - DE800B6422A2F8AF00AC9A23 /* AuthProviders.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B4522A2F8AF00AC9A23 /* AuthProviders.m */; }; - DE800B6722A2FF7300AC9A23 /* GoogleService-Info_multi.plist in Resources */ = {isa = PBXBuildFile; fileRef = DE800B6522A2FF7300AC9A23 /* GoogleService-Info_multi.plist */; }; - DE800B6822A2FF7300AC9A23 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = DE800B6622A2FF7300AC9A23 /* GoogleService-Info.plist */; }; - DEBEF60E245247A0005E1A8F /* AccountInfoTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEBEF60D245247A0005E1A8F /* AccountInfoTests.swift */; }; - DED400B0243E56F500BF6D56 /* FacebookAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400A4243E56F500BF6D56 /* FacebookAuthTests.m */; }; - DED400B1243E56F500BF6D56 /* generate_refresh_token.sh in Resources */ = {isa = PBXBuildFile; fileRef = DED400A5243E56F500BF6D56 /* generate_refresh_token.sh */; }; - DED400B3243E56F500BF6D56 /* AnonymousAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400A8243E56F500BF6D56 /* AnonymousAuthTests.m */; }; - DED400B5243E56F500BF6D56 /* AccountInfoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AB243E56F500BF6D56 /* AccountInfoTests.m */; }; - DED400B6243E56F500BF6D56 /* EmailPasswordAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AC243E56F500BF6D56 /* EmailPasswordAuthTests.m */; }; - DED400B7243E56F500BF6D56 /* CustomAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AD243E56F500BF6D56 /* CustomAuthTests.m */; }; - DED400B8243E56F500BF6D56 /* GoogleAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AE243E56F500BF6D56 /* GoogleAuthTests.m */; }; - DED400B9243E56F500BF6D56 /* FIRAuthApiTestsBase.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AF243E56F500BF6D56 /* FIRAuthApiTestsBase.m */; }; - DED400C1243E571500BF6D56 /* VerifyIOSClientTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BB243E571500BF6D56 /* VerifyIOSClientTests.m */; }; - DED400C2243E571500BF6D56 /* BYOAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BC243E571500BF6D56 /* BYOAuthTests.m */; }; - DED400C3243E571500BF6D56 /* FIRAuthE2eTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */; }; - DED400C4243E571500BF6D56 /* FIRAuthE2eTestsBase.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */; }; - DEF68E952799B9970064CC92 /* SwiftAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEF68E942799B9970064CC92 /* SwiftAPI.swift */; }; + 400283EA23EA254B0006A298 /* MainViewController+MultiFactor.m in Sources */ = {isa = PBXBuildFile; fileRef = 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */; }; + DE1865AC245B879B00F8AD70 /* TestsBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865AB245B879B00F8AD70 /* TestsBase.swift */; }; + DE1865AE245B8A1400F8AD70 /* AnonymousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */; }; + DE1865B2245C7A2B00F8AD70 /* EmailPasswordTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */; }; + DE1865B4245C92A600F8AD70 /* GoogleTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B3245C92A600F8AD70 /* GoogleTests.swift */; }; + DE1865B6245C95DA00F8AD70 /* Credentials.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B5245C95DA00F8AD70 /* Credentials.swift */; }; + DE1865B8245CC6FC00F8AD70 /* FacebookTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B7245CC6FC00F8AD70 /* FacebookTests.swift */; }; + DE800B4722A2F8AF00AC9A23 /* MainViewController+Custom.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1122A2F8AF00AC9A23 /* MainViewController+Custom.m */; }; + DE800B4822A2F8AF00AC9A23 /* SettingsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1222A2F8AF00AC9A23 /* SettingsViewController.m */; }; + DE800B4922A2F8AF00AC9A23 /* MainViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE800B1322A2F8AF00AC9A23 /* MainViewController.xib */; }; + DE800B4A22A2F8AF00AC9A23 /* GoogleAuthProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1422A2F8AF00AC9A23 /* GoogleAuthProvider.m */; }; + DE800B4B22A2F8AF00AC9A23 /* MainViewController+User.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1822A2F8AF00AC9A23 /* MainViewController+User.m */; }; + DE800B4C22A2F8AF00AC9A23 /* MainViewController+GameCenter.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1922A2F8AF00AC9A23 /* MainViewController+GameCenter.m */; }; + DE800B4D22A2F8AF00AC9A23 /* MainViewController+Phone.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1A22A2F8AF00AC9A23 /* MainViewController+Phone.m */; }; + DE800B4E22A2F8AF00AC9A23 /* UserTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1B22A2F8AF00AC9A23 /* UserTableViewCell.m */; }; + DE800B4F22A2F8AF00AC9A23 /* MainViewController+Facebook.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1C22A2F8AF00AC9A23 /* MainViewController+Facebook.m */; }; + DE800B5022A2F8AF00AC9A23 /* UIViewController+Alerts.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2022A2F8AF00AC9A23 /* UIViewController+Alerts.m */; }; + DE800B5122A2F8AF00AC9A23 /* MainViewController+Email.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2222A2F8AF00AC9A23 /* MainViewController+Email.m */; }; + DE800B5222A2F8AF00AC9A23 /* MainViewController+Auth.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2322A2F8AF00AC9A23 /* MainViewController+Auth.m */; }; + DE800B5422A2F8AF00AC9A23 /* UserInfoViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE800B2822A2F8AF00AC9A23 /* UserInfoViewController.xib */; }; + DE800B5522A2F8AF00AC9A23 /* MainViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2922A2F8AF00AC9A23 /* MainViewController.m */; }; + DE800B5622A2F8AF00AC9A23 /* MainViewController+AutoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2B22A2F8AF00AC9A23 /* MainViewController+AutoTests.m */; }; + DE800B5722A2F8AF00AC9A23 /* MainViewController+OOB.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2C22A2F8AF00AC9A23 /* MainViewController+OOB.m */; }; + DE800B5822A2F8AF00AC9A23 /* AppManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2D22A2F8AF00AC9A23 /* AppManager.m */; }; + DE800B5922A2F8AF00AC9A23 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2E22A2F8AF00AC9A23 /* main.m */; }; + DE800B5A22A2F8AF00AC9A23 /* MainViewController+App.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2F22A2F8AF00AC9A23 /* MainViewController+App.m */; }; + DE800B5B22A2F8AF00AC9A23 /* MainViewController+OAuth.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3122A2F8AF00AC9A23 /* MainViewController+OAuth.m */; }; + DE800B5C22A2F8AF00AC9A23 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = DE800B3222A2F8AF00AC9A23 /* Images.xcassets */; }; + DE800B5D22A2F8AF00AC9A23 /* UserInfoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3422A2F8AF00AC9A23 /* UserInfoViewController.m */; }; + DE800B5E22A2F8AF00AC9A23 /* StaticContentTableViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3622A2F8AF00AC9A23 /* StaticContentTableViewManager.m */; }; + DE800B5F22A2F8AF00AC9A23 /* MainViewController+Google.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3922A2F8AF00AC9A23 /* MainViewController+Google.m */; }; + DE800B6022A2F8AF00AC9A23 /* FacebookAuthProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3B22A2F8AF00AC9A23 /* FacebookAuthProvider.m */; }; + DE800B6122A2F8AF00AC9A23 /* ApplicationDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3C22A2F8AF00AC9A23 /* ApplicationDelegate.m */; }; + DE800B6222A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m */; }; + DE800B6322A2F8AF00AC9A23 /* SettingsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE800B4122A2F8AF00AC9A23 /* SettingsViewController.xib */; }; + DE800B6422A2F8AF00AC9A23 /* AuthProviders.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B4522A2F8AF00AC9A23 /* AuthProviders.m */; }; + DE800B6722A2FF7300AC9A23 /* GoogleService-Info_multi.plist in Resources */ = {isa = PBXBuildFile; fileRef = DE800B6522A2FF7300AC9A23 /* GoogleService-Info_multi.plist */; }; + DE800B6822A2FF7300AC9A23 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = DE800B6622A2FF7300AC9A23 /* GoogleService-Info.plist */; }; + DEBEF60E245247A0005E1A8F /* AccountInfoTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEBEF60D245247A0005E1A8F /* AccountInfoTests.swift */; }; + DED400B0243E56F500BF6D56 /* FacebookAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400A4243E56F500BF6D56 /* FacebookAuthTests.m */; }; + DED400B1243E56F500BF6D56 /* generate_refresh_token.sh in Resources */ = {isa = PBXBuildFile; fileRef = DED400A5243E56F500BF6D56 /* generate_refresh_token.sh */; }; + DED400B3243E56F500BF6D56 /* AnonymousAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400A8243E56F500BF6D56 /* AnonymousAuthTests.m */; }; + DED400B5243E56F500BF6D56 /* AccountInfoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AB243E56F500BF6D56 /* AccountInfoTests.m */; }; + DED400B6243E56F500BF6D56 /* EmailPasswordAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AC243E56F500BF6D56 /* EmailPasswordAuthTests.m */; }; + DED400B7243E56F500BF6D56 /* CustomAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AD243E56F500BF6D56 /* CustomAuthTests.m */; }; + DED400B8243E56F500BF6D56 /* GoogleAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AE243E56F500BF6D56 /* GoogleAuthTests.m */; }; + DED400B9243E56F500BF6D56 /* FIRAuthApiTestsBase.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AF243E56F500BF6D56 /* FIRAuthApiTestsBase.m */; }; + DED400C1243E571500BF6D56 /* VerifyIOSClientTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BB243E571500BF6D56 /* VerifyIOSClientTests.m */; }; + DED400C2243E571500BF6D56 /* BYOAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BC243E571500BF6D56 /* BYOAuthTests.m */; }; + DED400C3243E571500BF6D56 /* FIRAuthE2eTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */; }; + DED400C4243E571500BF6D56 /* FIRAuthE2eTestsBase.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */; }; + DEF68E952799B9970064CC92 /* SwiftAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEF68E942799B9970064CC92 /* SwiftAPI.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - DE800B7622A5927C00AC9A23 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = DE800AEC22A2F87E00AC9A23 /* Project object */; - proxyType = 1; - remoteGlobalIDString = DE800AF322A2F87E00AC9A23; - remoteInfo = AuthSample; - }; - DE800B9A22A5BD1800AC9A23 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = DE800AEC22A2F87E00AC9A23 /* Project object */; - proxyType = 1; - remoteGlobalIDString = DE800AF322A2F87E00AC9A23; - remoteInfo = AuthSample; - }; - DEBEF6082450EA27005E1A8F /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = DE800AEC22A2F87E00AC9A23 /* Project object */; - proxyType = 1; - remoteGlobalIDString = DE800AF322A2F87E00AC9A23; - remoteInfo = AuthSample; - }; + DE800B7622A5927C00AC9A23 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = DE800AEC22A2F87E00AC9A23 /* Project object */; + proxyType = 1; + remoteGlobalIDString = DE800AF322A2F87E00AC9A23; + remoteInfo = AuthSample; + }; + DE800B9A22A5BD1800AC9A23 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = DE800AEC22A2F87E00AC9A23 /* Project object */; + proxyType = 1; + remoteGlobalIDString = DE800AF322A2F87E00AC9A23; + remoteInfo = AuthSample; + }; + DEBEF6082450EA27005E1A8F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = DE800AEC22A2F87E00AC9A23 /* Project object */; + proxyType = 1; + remoteGlobalIDString = DE800AF322A2F87E00AC9A23; + remoteInfo = AuthSample; + }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 0470AED2ED2D120262F08CCB /* Pods-SwiftApiTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SwiftApiTests.debug.xcconfig"; path = "Target Support Files/Pods-SwiftApiTests/Pods-SwiftApiTests.debug.xcconfig"; sourceTree = ""; }; - 19E444FF7D3AE620B0F4293A /* Pods_Auth_ApiTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Auth_ApiTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 1A7717341987080791B5A4C0 /* Pods-Auth_ApiTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Auth_ApiTests.debug.xcconfig"; path = "Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests.debug.xcconfig"; sourceTree = ""; }; - 1B9909B9159B2191A05906FA /* Pods_Auth_E2eTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Auth_E2eTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 2FF8EE500CF78004FC65C179 /* Pods-AuthSample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AuthSample.debug.xcconfig"; path = "Target Support Files/Pods-AuthSample/Pods-AuthSample.debug.xcconfig"; sourceTree = ""; }; - 400283E823EA254A0006A298 /* MainViewController+MultiFactor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+MultiFactor.h"; sourceTree = ""; }; - 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+MultiFactor.m"; sourceTree = ""; }; - 9E4DB36B019BA019C9EA4229 /* Pods-Auth_E2eTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Auth_E2eTests.debug.xcconfig"; path = "Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests.debug.xcconfig"; sourceTree = ""; }; - A1DE7ED770F906C5B9750C49 /* Pods-AuthSample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AuthSample.release.xcconfig"; path = "Target Support Files/Pods-AuthSample/Pods-AuthSample.release.xcconfig"; sourceTree = ""; }; - AF3816DA4B5B0385038F24E3 /* Pods-Auth_ApiTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Auth_ApiTests.release.xcconfig"; path = "Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests.release.xcconfig"; sourceTree = ""; }; - B5E2551BF842F02DF1A2937B /* Pods_SwiftApiTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_SwiftApiTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - B8F193D66088DE1B34480177 /* Pods-Auth_E2eTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Auth_E2eTests.release.xcconfig"; path = "Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests.release.xcconfig"; sourceTree = ""; }; - DE1865AB245B879B00F8AD70 /* TestsBase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TestsBase.swift; sourceTree = ""; }; - DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnonymousTests.swift; sourceTree = ""; }; - DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmailPasswordTests.swift; sourceTree = ""; }; - DE1865B3245C92A600F8AD70 /* GoogleTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GoogleTests.swift; sourceTree = ""; }; - DE1865B5245C95DA00F8AD70 /* Credentials.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Credentials.swift; sourceTree = ""; }; - DE1865B7245CC6FC00F8AD70 /* FacebookTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FacebookTests.swift; sourceTree = ""; }; - DE800AF422A2F87E00AC9A23 /* AuthSample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = AuthSample.app; sourceTree = BUILT_PRODUCTS_DIR; }; - DE800B0E22A2F8AF00AC9A23 /* AppManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppManager.h; sourceTree = ""; }; - DE800B0F22A2F8AF00AC9A23 /* MainViewController+AutoTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+AutoTests.h"; sourceTree = ""; }; - DE800B1022A2F8AF00AC9A23 /* MainViewController+OOB.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+OOB.h"; sourceTree = ""; }; - DE800B1122A2F8AF00AC9A23 /* MainViewController+Custom.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Custom.m"; sourceTree = ""; }; - DE800B1222A2F8AF00AC9A23 /* SettingsViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SettingsViewController.m; sourceTree = ""; }; - DE800B1322A2F8AF00AC9A23 /* MainViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MainViewController.xib; sourceTree = ""; }; - DE800B1422A2F8AF00AC9A23 /* GoogleAuthProvider.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GoogleAuthProvider.m; sourceTree = ""; }; - DE800B1522A2F8AF00AC9A23 /* UserInfoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserInfoViewController.h; sourceTree = ""; }; - DE800B1622A2F8AF00AC9A23 /* MainViewController+OAuth.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+OAuth.h"; sourceTree = ""; }; - DE800B1722A2F8AF00AC9A23 /* MainViewController+App.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+App.h"; sourceTree = ""; }; - DE800B1822A2F8AF00AC9A23 /* MainViewController+User.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+User.m"; sourceTree = ""; }; - DE800B1922A2F8AF00AC9A23 /* MainViewController+GameCenter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+GameCenter.m"; sourceTree = ""; }; - DE800B1A22A2F8AF00AC9A23 /* MainViewController+Phone.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Phone.m"; sourceTree = ""; }; - DE800B1B22A2F8AF00AC9A23 /* UserTableViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UserTableViewCell.m; sourceTree = ""; }; - DE800B1C22A2F8AF00AC9A23 /* MainViewController+Facebook.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Facebook.m"; sourceTree = ""; }; - DE800B1D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CustomTokenDataEntryViewController.h; sourceTree = ""; }; - DE800B1E22A2F8AF00AC9A23 /* FacebookAuthProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FacebookAuthProvider.h; sourceTree = ""; }; - DE800B1F22A2F8AF00AC9A23 /* ApplicationDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ApplicationDelegate.h; sourceTree = ""; }; - DE800B2022A2F8AF00AC9A23 /* UIViewController+Alerts.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIViewController+Alerts.m"; sourceTree = ""; }; - DE800B2122A2F8AF00AC9A23 /* MainViewController+Google.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Google.h"; sourceTree = ""; }; - DE800B2222A2F8AF00AC9A23 /* MainViewController+Email.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Email.m"; sourceTree = ""; }; - DE800B2322A2F8AF00AC9A23 /* MainViewController+Auth.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Auth.m"; sourceTree = ""; }; - DE800B2422A2F8AF00AC9A23 /* StaticContentTableViewManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StaticContentTableViewManager.h; sourceTree = ""; }; - DE800B2522A2F8AF00AC9A23 /* SampleTemplate.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = SampleTemplate.entitlements; sourceTree = ""; }; - DE800B2622A2F8AF00AC9A23 /* AuthProviders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthProviders.h; sourceTree = ""; }; - DE800B2722A2F8AF00AC9A23 /* ApplicationTemplate.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = ApplicationTemplate.plist; sourceTree = ""; }; - DE800B2822A2F8AF00AC9A23 /* UserInfoViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = UserInfoViewController.xib; sourceTree = ""; }; - DE800B2922A2F8AF00AC9A23 /* MainViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MainViewController.m; sourceTree = ""; }; - DE800B2A22A2F8AF00AC9A23 /* MainViewController+Custom.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Custom.h"; sourceTree = ""; }; - DE800B2B22A2F8AF00AC9A23 /* MainViewController+AutoTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+AutoTests.m"; sourceTree = ""; }; - DE800B2C22A2F8AF00AC9A23 /* MainViewController+OOB.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+OOB.m"; sourceTree = ""; }; - DE800B2D22A2F8AF00AC9A23 /* AppManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppManager.m; sourceTree = ""; }; - DE800B2E22A2F8AF00AC9A23 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; - DE800B2F22A2F8AF00AC9A23 /* MainViewController+App.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+App.m"; sourceTree = ""; }; - DE800B3022A2F8AF00AC9A23 /* MainViewController+Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Internal.h"; sourceTree = ""; }; - DE800B3122A2F8AF00AC9A23 /* MainViewController+OAuth.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+OAuth.m"; sourceTree = ""; }; - DE800B3222A2F8AF00AC9A23 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; - DE800B3322A2F8AF00AC9A23 /* GoogleAuthProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GoogleAuthProvider.h; sourceTree = ""; }; - DE800B3422A2F8AF00AC9A23 /* UserInfoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UserInfoViewController.m; sourceTree = ""; }; - DE800B3522A2F8AF00AC9A23 /* SettingsViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SettingsViewController.h; sourceTree = ""; }; - DE800B3622A2F8AF00AC9A23 /* StaticContentTableViewManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StaticContentTableViewManager.m; sourceTree = ""; }; - DE800B3722A2F8AF00AC9A23 /* MainViewController+Email.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Email.h"; sourceTree = ""; }; - DE800B3822A2F8AF00AC9A23 /* MainViewController+Auth.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Auth.h"; sourceTree = ""; }; - DE800B3922A2F8AF00AC9A23 /* MainViewController+Google.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Google.m"; sourceTree = ""; }; - DE800B3A22A2F8AF00AC9A23 /* UIViewController+Alerts.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIViewController+Alerts.h"; sourceTree = ""; }; - DE800B3B22A2F8AF00AC9A23 /* FacebookAuthProvider.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FacebookAuthProvider.m; sourceTree = ""; }; - DE800B3C22A2F8AF00AC9A23 /* ApplicationDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ApplicationDelegate.m; sourceTree = ""; }; - DE800B3D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CustomTokenDataEntryViewController.m; sourceTree = ""; }; - DE800B3E22A2F8AF00AC9A23 /* MainViewController+Facebook.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Facebook.h"; sourceTree = ""; }; - DE800B3F22A2F8AF00AC9A23 /* MainViewController+Phone.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Phone.h"; sourceTree = ""; }; - DE800B4022A2F8AF00AC9A23 /* UserTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserTableViewCell.h; sourceTree = ""; }; - DE800B4122A2F8AF00AC9A23 /* SettingsViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = SettingsViewController.xib; sourceTree = ""; }; - DE800B4222A2F8AF00AC9A23 /* MainViewController+GameCenter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+GameCenter.h"; sourceTree = ""; }; - DE800B4322A2F8AF00AC9A23 /* MainViewController+User.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+User.h"; sourceTree = ""; }; - DE800B4422A2F8AF00AC9A23 /* MainViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MainViewController.h; sourceTree = ""; }; - DE800B4522A2F8AF00AC9A23 /* AuthProviders.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AuthProviders.m; sourceTree = ""; }; - DE800B4622A2F8AF00AC9A23 /* AuthCredentialsTemplate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentialsTemplate.h; sourceTree = ""; }; - DE800B6522A2FF7300AC9A23 /* GoogleService-Info_multi.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info_multi.plist"; sourceTree = ""; }; - DE800B6622A2FF7300AC9A23 /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = ""; }; - DE800B6922A2FF8700AC9A23 /* Application.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Application.plist; sourceTree = ""; }; - DE800B6A22A2FF8700AC9A23 /* Sample.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Sample.entitlements; sourceTree = ""; }; - DE800B6C22A2FFFF00AC9A23 /* AuthCredentials.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentials.h; sourceTree = ""; }; - DE800B7122A5927C00AC9A23 /* Auth_ApiTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Auth_ApiTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - DE800B9522A5BD1800AC9A23 /* Auth_E2eTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Auth_E2eTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - DEBEF6032450EA27005E1A8F /* SwiftApiTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SwiftApiTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - DEBEF6072450EA27005E1A8F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - DEBEF60D245247A0005E1A8F /* AccountInfoTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountInfoTests.swift; sourceTree = ""; }; - DED400A3243E56F500BF6D56 /* AuthCredentials.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentials.h; sourceTree = ""; }; - DED400A4243E56F500BF6D56 /* FacebookAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FacebookAuthTests.m; sourceTree = ""; }; - DED400A5243E56F500BF6D56 /* generate_refresh_token.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = generate_refresh_token.sh; sourceTree = ""; }; - DED400A6243E56F500BF6D56 /* PhoneMultiFactorTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PhoneMultiFactorTests.swift; sourceTree = ""; }; - DED400A7243E56F500BF6D56 /* AuthCredentialsTemplate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentialsTemplate.h; sourceTree = ""; }; - DED400A8243E56F500BF6D56 /* AnonymousAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AnonymousAuthTests.m; sourceTree = ""; }; - DED400A9243E56F500BF6D56 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - DED400AA243E56F500BF6D56 /* FIRAuthApiTestsBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FIRAuthApiTestsBase.h; sourceTree = ""; }; - DED400AB243E56F500BF6D56 /* AccountInfoTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AccountInfoTests.m; sourceTree = ""; }; - DED400AC243E56F500BF6D56 /* EmailPasswordAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = EmailPasswordAuthTests.m; sourceTree = ""; }; - DED400AD243E56F500BF6D56 /* CustomAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CustomAuthTests.m; sourceTree = ""; }; - DED400AE243E56F500BF6D56 /* GoogleAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GoogleAuthTests.m; sourceTree = ""; }; - DED400AF243E56F500BF6D56 /* FIRAuthApiTestsBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthApiTestsBase.m; sourceTree = ""; }; - DED400BA243E571500BF6D56 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - DED400BB243E571500BF6D56 /* VerifyIOSClientTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = VerifyIOSClientTests.m; sourceTree = ""; }; - DED400BC243E571500BF6D56 /* BYOAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BYOAuthTests.m; sourceTree = ""; }; - DED400BD243E571500BF6D56 /* FIRAuthE2eTestsBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FIRAuthE2eTestsBase.h; sourceTree = ""; }; - DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthE2eTests.m; sourceTree = ""; }; - DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthE2eTestsBase.m; sourceTree = ""; }; - DEF68E942799B9970064CC92 /* SwiftAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftAPI.swift; sourceTree = ""; }; - DFA27C5857B4273250BE0B77 /* Pods-SwiftApiTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SwiftApiTests.release.xcconfig"; path = "Target Support Files/Pods-SwiftApiTests/Pods-SwiftApiTests.release.xcconfig"; sourceTree = ""; }; - E782F49011F2F27C9411D056 /* Pods_AuthSample.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_AuthSample.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 400283E823EA254A0006A298 /* MainViewController+MultiFactor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+MultiFactor.h"; sourceTree = ""; }; + 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+MultiFactor.m"; sourceTree = ""; }; + DE1865AB245B879B00F8AD70 /* TestsBase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TestsBase.swift; sourceTree = ""; }; + DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnonymousTests.swift; sourceTree = ""; }; + DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmailPasswordTests.swift; sourceTree = ""; }; + DE1865B3245C92A600F8AD70 /* GoogleTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GoogleTests.swift; sourceTree = ""; }; + DE1865B5245C95DA00F8AD70 /* Credentials.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Credentials.swift; sourceTree = ""; }; + DE1865B7245CC6FC00F8AD70 /* FacebookTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FacebookTests.swift; sourceTree = ""; }; + DE800AF422A2F87E00AC9A23 /* AuthSample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = AuthSample.app; sourceTree = BUILT_PRODUCTS_DIR; }; + DE800B0E22A2F8AF00AC9A23 /* AppManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppManager.h; sourceTree = ""; }; + DE800B0F22A2F8AF00AC9A23 /* MainViewController+AutoTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+AutoTests.h"; sourceTree = ""; }; + DE800B1022A2F8AF00AC9A23 /* MainViewController+OOB.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+OOB.h"; sourceTree = ""; }; + DE800B1122A2F8AF00AC9A23 /* MainViewController+Custom.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Custom.m"; sourceTree = ""; }; + DE800B1222A2F8AF00AC9A23 /* SettingsViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SettingsViewController.m; sourceTree = ""; }; + DE800B1322A2F8AF00AC9A23 /* MainViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MainViewController.xib; sourceTree = ""; }; + DE800B1422A2F8AF00AC9A23 /* GoogleAuthProvider.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GoogleAuthProvider.m; sourceTree = ""; }; + DE800B1522A2F8AF00AC9A23 /* UserInfoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserInfoViewController.h; sourceTree = ""; }; + DE800B1622A2F8AF00AC9A23 /* MainViewController+OAuth.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+OAuth.h"; sourceTree = ""; }; + DE800B1722A2F8AF00AC9A23 /* MainViewController+App.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+App.h"; sourceTree = ""; }; + DE800B1822A2F8AF00AC9A23 /* MainViewController+User.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+User.m"; sourceTree = ""; }; + DE800B1922A2F8AF00AC9A23 /* MainViewController+GameCenter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+GameCenter.m"; sourceTree = ""; }; + DE800B1A22A2F8AF00AC9A23 /* MainViewController+Phone.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Phone.m"; sourceTree = ""; }; + DE800B1B22A2F8AF00AC9A23 /* UserTableViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UserTableViewCell.m; sourceTree = ""; }; + DE800B1C22A2F8AF00AC9A23 /* MainViewController+Facebook.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Facebook.m"; sourceTree = ""; }; + DE800B1D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CustomTokenDataEntryViewController.h; sourceTree = ""; }; + DE800B1E22A2F8AF00AC9A23 /* FacebookAuthProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FacebookAuthProvider.h; sourceTree = ""; }; + DE800B1F22A2F8AF00AC9A23 /* ApplicationDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ApplicationDelegate.h; sourceTree = ""; }; + DE800B2022A2F8AF00AC9A23 /* UIViewController+Alerts.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIViewController+Alerts.m"; sourceTree = ""; }; + DE800B2122A2F8AF00AC9A23 /* MainViewController+Google.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Google.h"; sourceTree = ""; }; + DE800B2222A2F8AF00AC9A23 /* MainViewController+Email.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Email.m"; sourceTree = ""; }; + DE800B2322A2F8AF00AC9A23 /* MainViewController+Auth.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Auth.m"; sourceTree = ""; }; + DE800B2422A2F8AF00AC9A23 /* StaticContentTableViewManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StaticContentTableViewManager.h; sourceTree = ""; }; + DE800B2522A2F8AF00AC9A23 /* SampleTemplate.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = SampleTemplate.entitlements; sourceTree = ""; }; + DE800B2622A2F8AF00AC9A23 /* AuthProviders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthProviders.h; sourceTree = ""; }; + DE800B2722A2F8AF00AC9A23 /* ApplicationTemplate.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = ApplicationTemplate.plist; sourceTree = ""; }; + DE800B2822A2F8AF00AC9A23 /* UserInfoViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = UserInfoViewController.xib; sourceTree = ""; }; + DE800B2922A2F8AF00AC9A23 /* MainViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MainViewController.m; sourceTree = ""; }; + DE800B2A22A2F8AF00AC9A23 /* MainViewController+Custom.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Custom.h"; sourceTree = ""; }; + DE800B2B22A2F8AF00AC9A23 /* MainViewController+AutoTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+AutoTests.m"; sourceTree = ""; }; + DE800B2C22A2F8AF00AC9A23 /* MainViewController+OOB.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+OOB.m"; sourceTree = ""; }; + DE800B2D22A2F8AF00AC9A23 /* AppManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppManager.m; sourceTree = ""; }; + DE800B2E22A2F8AF00AC9A23 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + DE800B2F22A2F8AF00AC9A23 /* MainViewController+App.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+App.m"; sourceTree = ""; }; + DE800B3022A2F8AF00AC9A23 /* MainViewController+Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Internal.h"; sourceTree = ""; }; + DE800B3122A2F8AF00AC9A23 /* MainViewController+OAuth.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+OAuth.m"; sourceTree = ""; }; + DE800B3222A2F8AF00AC9A23 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; + DE800B3322A2F8AF00AC9A23 /* GoogleAuthProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GoogleAuthProvider.h; sourceTree = ""; }; + DE800B3422A2F8AF00AC9A23 /* UserInfoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UserInfoViewController.m; sourceTree = ""; }; + DE800B3522A2F8AF00AC9A23 /* SettingsViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SettingsViewController.h; sourceTree = ""; }; + DE800B3622A2F8AF00AC9A23 /* StaticContentTableViewManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StaticContentTableViewManager.m; sourceTree = ""; }; + DE800B3722A2F8AF00AC9A23 /* MainViewController+Email.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Email.h"; sourceTree = ""; }; + DE800B3822A2F8AF00AC9A23 /* MainViewController+Auth.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Auth.h"; sourceTree = ""; }; + DE800B3922A2F8AF00AC9A23 /* MainViewController+Google.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Google.m"; sourceTree = ""; }; + DE800B3A22A2F8AF00AC9A23 /* UIViewController+Alerts.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIViewController+Alerts.h"; sourceTree = ""; }; + DE800B3B22A2F8AF00AC9A23 /* FacebookAuthProvider.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FacebookAuthProvider.m; sourceTree = ""; }; + DE800B3C22A2F8AF00AC9A23 /* ApplicationDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ApplicationDelegate.m; sourceTree = ""; }; + DE800B3D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CustomTokenDataEntryViewController.m; sourceTree = ""; }; + DE800B3E22A2F8AF00AC9A23 /* MainViewController+Facebook.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Facebook.h"; sourceTree = ""; }; + DE800B3F22A2F8AF00AC9A23 /* MainViewController+Phone.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Phone.h"; sourceTree = ""; }; + DE800B4022A2F8AF00AC9A23 /* UserTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserTableViewCell.h; sourceTree = ""; }; + DE800B4122A2F8AF00AC9A23 /* SettingsViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = SettingsViewController.xib; sourceTree = ""; }; + DE800B4222A2F8AF00AC9A23 /* MainViewController+GameCenter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+GameCenter.h"; sourceTree = ""; }; + DE800B4322A2F8AF00AC9A23 /* MainViewController+User.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+User.h"; sourceTree = ""; }; + DE800B4422A2F8AF00AC9A23 /* MainViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MainViewController.h; sourceTree = ""; }; + DE800B4522A2F8AF00AC9A23 /* AuthProviders.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AuthProviders.m; sourceTree = ""; }; + DE800B4622A2F8AF00AC9A23 /* AuthCredentialsTemplate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentialsTemplate.h; sourceTree = ""; }; + DE800B6522A2FF7300AC9A23 /* GoogleService-Info_multi.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info_multi.plist"; sourceTree = ""; }; + DE800B6622A2FF7300AC9A23 /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = ""; }; + DE800B6922A2FF8700AC9A23 /* Application.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Application.plist; sourceTree = ""; }; + DE800B6A22A2FF8700AC9A23 /* Sample.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Sample.entitlements; sourceTree = ""; }; + DE800B6C22A2FFFF00AC9A23 /* AuthCredentials.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentials.h; sourceTree = ""; }; + DE800B7122A5927C00AC9A23 /* Auth_ApiTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Auth_ApiTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + DE800B9522A5BD1800AC9A23 /* Auth_E2eTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Auth_E2eTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + DEBEF6032450EA27005E1A8F /* SwiftApiTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SwiftApiTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + DEBEF6072450EA27005E1A8F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + DEBEF60D245247A0005E1A8F /* AccountInfoTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountInfoTests.swift; sourceTree = ""; }; + DED400A3243E56F500BF6D56 /* AuthCredentials.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentials.h; sourceTree = ""; }; + DED400A4243E56F500BF6D56 /* FacebookAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FacebookAuthTests.m; sourceTree = ""; }; + DED400A5243E56F500BF6D56 /* generate_refresh_token.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = generate_refresh_token.sh; sourceTree = ""; }; + DED400A6243E56F500BF6D56 /* PhoneMultiFactorTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PhoneMultiFactorTests.swift; sourceTree = ""; }; + DED400A7243E56F500BF6D56 /* AuthCredentialsTemplate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentialsTemplate.h; sourceTree = ""; }; + DED400A8243E56F500BF6D56 /* AnonymousAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AnonymousAuthTests.m; sourceTree = ""; }; + DED400A9243E56F500BF6D56 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + DED400AA243E56F500BF6D56 /* FIRAuthApiTestsBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FIRAuthApiTestsBase.h; sourceTree = ""; }; + DED400AB243E56F500BF6D56 /* AccountInfoTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AccountInfoTests.m; sourceTree = ""; }; + DED400AC243E56F500BF6D56 /* EmailPasswordAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = EmailPasswordAuthTests.m; sourceTree = ""; }; + DED400AD243E56F500BF6D56 /* CustomAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CustomAuthTests.m; sourceTree = ""; }; + DED400AE243E56F500BF6D56 /* GoogleAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GoogleAuthTests.m; sourceTree = ""; }; + DED400AF243E56F500BF6D56 /* FIRAuthApiTestsBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthApiTestsBase.m; sourceTree = ""; }; + DED400BA243E571500BF6D56 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + DED400BB243E571500BF6D56 /* VerifyIOSClientTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = VerifyIOSClientTests.m; sourceTree = ""; }; + DED400BC243E571500BF6D56 /* BYOAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BYOAuthTests.m; sourceTree = ""; }; + DED400BD243E571500BF6D56 /* FIRAuthE2eTestsBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FIRAuthE2eTestsBase.h; sourceTree = ""; }; + DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthE2eTests.m; sourceTree = ""; }; + DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthE2eTestsBase.m; sourceTree = ""; }; + DEF68E942799B9970064CC92 /* SwiftAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftAPI.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - DE800AF122A2F87E00AC9A23 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 731F70C06E1001F8313E21BE /* Pods_AuthSample.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DE800B6E22A5927C00AC9A23 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 5EDCF9BC38AB1472B862D79B /* Pods_Auth_ApiTests.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DE800B9222A5BD1800AC9A23 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 2D9368346D8FA940FA2BD392 /* Pods_Auth_E2eTests.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DEBEF6002450EA27005E1A8F /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 7350C60D85615F0F8199BCAA /* Pods_SwiftApiTests.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; + DE800AF122A2F87E00AC9A23 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE800B6E22A5927C00AC9A23 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE800B9222A5BD1800AC9A23 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DEBEF6002450EA27005E1A8F /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - C4C05E1CFDE4CC7F68A7B4F1 /* Frameworks */ = { - isa = PBXGroup; - children = ( - E782F49011F2F27C9411D056 /* Pods_AuthSample.framework */, - 19E444FF7D3AE620B0F4293A /* Pods_Auth_ApiTests.framework */, - 1B9909B9159B2191A05906FA /* Pods_Auth_E2eTests.framework */, - B5E2551BF842F02DF1A2937B /* Pods_SwiftApiTests.framework */, - ); - name = Frameworks; - sourceTree = ""; - }; - C8C0A17357FAC82788BE1349 /* Pods */ = { - isa = PBXGroup; - children = ( - 2FF8EE500CF78004FC65C179 /* Pods-AuthSample.debug.xcconfig */, - A1DE7ED770F906C5B9750C49 /* Pods-AuthSample.release.xcconfig */, - 1A7717341987080791B5A4C0 /* Pods-Auth_ApiTests.debug.xcconfig */, - AF3816DA4B5B0385038F24E3 /* Pods-Auth_ApiTests.release.xcconfig */, - 9E4DB36B019BA019C9EA4229 /* Pods-Auth_E2eTests.debug.xcconfig */, - B8F193D66088DE1B34480177 /* Pods-Auth_E2eTests.release.xcconfig */, - 0470AED2ED2D120262F08CCB /* Pods-SwiftApiTests.debug.xcconfig */, - DFA27C5857B4273250BE0B77 /* Pods-SwiftApiTests.release.xcconfig */, - ); - path = Pods; - sourceTree = ""; - }; - DE800AEB22A2F87E00AC9A23 = { - isa = PBXGroup; - children = ( - DE800B0D22A2F8AF00AC9A23 /* Sample */, - DE800B7222A5927C00AC9A23 /* Auth_ApiTests */, - DE800B9622A5BD1800AC9A23 /* E2eTests */, - DEBEF6042450EA27005E1A8F /* SwiftApiTests */, - DE800AF522A2F87E00AC9A23 /* Products */, - C8C0A17357FAC82788BE1349 /* Pods */, - C4C05E1CFDE4CC7F68A7B4F1 /* Frameworks */, - ); - sourceTree = ""; - }; - DE800AF522A2F87E00AC9A23 /* Products */ = { - isa = PBXGroup; - children = ( - DE800AF422A2F87E00AC9A23 /* AuthSample.app */, - DE800B7122A5927C00AC9A23 /* Auth_ApiTests.xctest */, - DE800B9522A5BD1800AC9A23 /* Auth_E2eTests.xctest */, - DEBEF6032450EA27005E1A8F /* SwiftApiTests.xctest */, - ); - name = Products; - sourceTree = ""; - }; - DE800B0D22A2F8AF00AC9A23 /* Sample */ = { - isa = PBXGroup; - children = ( - DE800B6922A2FF8700AC9A23 /* Application.plist */, - DE800B1F22A2F8AF00AC9A23 /* ApplicationDelegate.h */, - DE800B3C22A2F8AF00AC9A23 /* ApplicationDelegate.m */, - DE800B2722A2F8AF00AC9A23 /* ApplicationTemplate.plist */, - DE800B0E22A2F8AF00AC9A23 /* AppManager.h */, - DE800B2D22A2F8AF00AC9A23 /* AppManager.m */, - DE800B6C22A2FFFF00AC9A23 /* AuthCredentials.h */, - DE800B4622A2F8AF00AC9A23 /* AuthCredentialsTemplate.h */, - DE800B2622A2F8AF00AC9A23 /* AuthProviders.h */, - DE800B4522A2F8AF00AC9A23 /* AuthProviders.m */, - DE800B1D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.h */, - DE800B3D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m */, - DE800B1E22A2F8AF00AC9A23 /* FacebookAuthProvider.h */, - DE800B3B22A2F8AF00AC9A23 /* FacebookAuthProvider.m */, - DE800B3322A2F8AF00AC9A23 /* GoogleAuthProvider.h */, - DE800B1422A2F8AF00AC9A23 /* GoogleAuthProvider.m */, - DE800B6522A2FF7300AC9A23 /* GoogleService-Info_multi.plist */, - DE800B6622A2FF7300AC9A23 /* GoogleService-Info.plist */, - DE800B3222A2F8AF00AC9A23 /* Images.xcassets */, - DE800B2E22A2F8AF00AC9A23 /* main.m */, - DE800B4422A2F8AF00AC9A23 /* MainViewController.h */, - DE800B2922A2F8AF00AC9A23 /* MainViewController.m */, - DE800B1322A2F8AF00AC9A23 /* MainViewController.xib */, - DE800B1722A2F8AF00AC9A23 /* MainViewController+App.h */, - DE800B2F22A2F8AF00AC9A23 /* MainViewController+App.m */, - DE800B3822A2F8AF00AC9A23 /* MainViewController+Auth.h */, - DE800B2322A2F8AF00AC9A23 /* MainViewController+Auth.m */, - DE800B0F22A2F8AF00AC9A23 /* MainViewController+AutoTests.h */, - DE800B2B22A2F8AF00AC9A23 /* MainViewController+AutoTests.m */, - DE800B2A22A2F8AF00AC9A23 /* MainViewController+Custom.h */, - DE800B1122A2F8AF00AC9A23 /* MainViewController+Custom.m */, - DE800B3722A2F8AF00AC9A23 /* MainViewController+Email.h */, - DE800B2222A2F8AF00AC9A23 /* MainViewController+Email.m */, - DE800B3E22A2F8AF00AC9A23 /* MainViewController+Facebook.h */, - DE800B1C22A2F8AF00AC9A23 /* MainViewController+Facebook.m */, - DE800B4222A2F8AF00AC9A23 /* MainViewController+GameCenter.h */, - DE800B1922A2F8AF00AC9A23 /* MainViewController+GameCenter.m */, - DE800B2122A2F8AF00AC9A23 /* MainViewController+Google.h */, - DE800B3922A2F8AF00AC9A23 /* MainViewController+Google.m */, - DE800B3022A2F8AF00AC9A23 /* MainViewController+Internal.h */, - 400283E823EA254A0006A298 /* MainViewController+MultiFactor.h */, - 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */, - DE800B1622A2F8AF00AC9A23 /* MainViewController+OAuth.h */, - DE800B3122A2F8AF00AC9A23 /* MainViewController+OAuth.m */, - DE800B1022A2F8AF00AC9A23 /* MainViewController+OOB.h */, - DE800B2C22A2F8AF00AC9A23 /* MainViewController+OOB.m */, - DE800B3F22A2F8AF00AC9A23 /* MainViewController+Phone.h */, - DE800B1A22A2F8AF00AC9A23 /* MainViewController+Phone.m */, - DE800B4322A2F8AF00AC9A23 /* MainViewController+User.h */, - DE800B1822A2F8AF00AC9A23 /* MainViewController+User.m */, - DE800B6A22A2FF8700AC9A23 /* Sample.entitlements */, - DE800B2522A2F8AF00AC9A23 /* SampleTemplate.entitlements */, - DE800B3522A2F8AF00AC9A23 /* SettingsViewController.h */, - DE800B1222A2F8AF00AC9A23 /* SettingsViewController.m */, - DE800B4122A2F8AF00AC9A23 /* SettingsViewController.xib */, - DE800B2422A2F8AF00AC9A23 /* StaticContentTableViewManager.h */, - DE800B3622A2F8AF00AC9A23 /* StaticContentTableViewManager.m */, - DE800B3A22A2F8AF00AC9A23 /* UIViewController+Alerts.h */, - DE800B2022A2F8AF00AC9A23 /* UIViewController+Alerts.m */, - DE800B1522A2F8AF00AC9A23 /* UserInfoViewController.h */, - DE800B3422A2F8AF00AC9A23 /* UserInfoViewController.m */, - DE800B2822A2F8AF00AC9A23 /* UserInfoViewController.xib */, - DE800B4022A2F8AF00AC9A23 /* UserTableViewCell.h */, - DE800B1B22A2F8AF00AC9A23 /* UserTableViewCell.m */, - ); - path = Sample; - sourceTree = SOURCE_ROOT; - }; - DE800B7222A5927C00AC9A23 /* Auth_ApiTests */ = { - isa = PBXGroup; - children = ( - DED400AB243E56F500BF6D56 /* AccountInfoTests.m */, - DED400A8243E56F500BF6D56 /* AnonymousAuthTests.m */, - DED400A3243E56F500BF6D56 /* AuthCredentials.h */, - DED400A7243E56F500BF6D56 /* AuthCredentialsTemplate.h */, - DED400AD243E56F500BF6D56 /* CustomAuthTests.m */, - DED400AC243E56F500BF6D56 /* EmailPasswordAuthTests.m */, - DED400A4243E56F500BF6D56 /* FacebookAuthTests.m */, - DED400AA243E56F500BF6D56 /* FIRAuthApiTestsBase.h */, - DED400AF243E56F500BF6D56 /* FIRAuthApiTestsBase.m */, - DED400A5243E56F500BF6D56 /* generate_refresh_token.sh */, - DED400AE243E56F500BF6D56 /* GoogleAuthTests.m */, - DED400A9243E56F500BF6D56 /* Info.plist */, - DED400A6243E56F500BF6D56 /* PhoneMultiFactorTests.swift */, - ); - name = Auth_ApiTests; - path = ApiTests; - sourceTree = SOURCE_ROOT; - }; - DE800B9622A5BD1800AC9A23 /* E2eTests */ = { - isa = PBXGroup; - children = ( - DED400BC243E571500BF6D56 /* BYOAuthTests.m */, - DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */, - DED400BD243E571500BF6D56 /* FIRAuthE2eTestsBase.h */, - DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */, - DED400BA243E571500BF6D56 /* Info.plist */, - DED400BB243E571500BF6D56 /* VerifyIOSClientTests.m */, - ); - path = E2eTests; - sourceTree = SOURCE_ROOT; - }; - DEBEF6042450EA27005E1A8F /* SwiftApiTests */ = { - isa = PBXGroup; - children = ( - DEBEF6072450EA27005E1A8F /* Info.plist */, - DEBEF60D245247A0005E1A8F /* AccountInfoTests.swift */, - DE1865AB245B879B00F8AD70 /* TestsBase.swift */, - DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */, - DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */, - DE1865B3245C92A600F8AD70 /* GoogleTests.swift */, - DE1865B5245C95DA00F8AD70 /* Credentials.swift */, - DE1865B7245CC6FC00F8AD70 /* FacebookTests.swift */, - DEF68E942799B9970064CC92 /* SwiftAPI.swift */, - ); - path = SwiftApiTests; - sourceTree = ""; - }; + DE800AEB22A2F87E00AC9A23 = { + isa = PBXGroup; + children = ( + DE800B0D22A2F8AF00AC9A23 /* Sample */, + DE800B7222A5927C00AC9A23 /* Auth_ApiTests */, + DE800B9622A5BD1800AC9A23 /* E2eTests */, + DEBEF6042450EA27005E1A8F /* SwiftApiTests */, + DE800AF522A2F87E00AC9A23 /* Products */, + ); + sourceTree = ""; + }; + DE800AF522A2F87E00AC9A23 /* Products */ = { + isa = PBXGroup; + children = ( + DE800AF422A2F87E00AC9A23 /* AuthSample.app */, + DE800B7122A5927C00AC9A23 /* Auth_ApiTests.xctest */, + DE800B9522A5BD1800AC9A23 /* Auth_E2eTests.xctest */, + DEBEF6032450EA27005E1A8F /* SwiftApiTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + DE800B0D22A2F8AF00AC9A23 /* Sample */ = { + isa = PBXGroup; + children = ( + DE800B6922A2FF8700AC9A23 /* Application.plist */, + DE800B1F22A2F8AF00AC9A23 /* ApplicationDelegate.h */, + DE800B3C22A2F8AF00AC9A23 /* ApplicationDelegate.m */, + DE800B2722A2F8AF00AC9A23 /* ApplicationTemplate.plist */, + DE800B0E22A2F8AF00AC9A23 /* AppManager.h */, + DE800B2D22A2F8AF00AC9A23 /* AppManager.m */, + DE800B6C22A2FFFF00AC9A23 /* AuthCredentials.h */, + DE800B4622A2F8AF00AC9A23 /* AuthCredentialsTemplate.h */, + DE800B2622A2F8AF00AC9A23 /* AuthProviders.h */, + DE800B4522A2F8AF00AC9A23 /* AuthProviders.m */, + DE800B1D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.h */, + DE800B3D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m */, + DE800B1E22A2F8AF00AC9A23 /* FacebookAuthProvider.h */, + DE800B3B22A2F8AF00AC9A23 /* FacebookAuthProvider.m */, + DE800B3322A2F8AF00AC9A23 /* GoogleAuthProvider.h */, + DE800B1422A2F8AF00AC9A23 /* GoogleAuthProvider.m */, + DE800B6522A2FF7300AC9A23 /* GoogleService-Info_multi.plist */, + DE800B6622A2FF7300AC9A23 /* GoogleService-Info.plist */, + DE800B3222A2F8AF00AC9A23 /* Images.xcassets */, + DE800B2E22A2F8AF00AC9A23 /* main.m */, + DE800B4422A2F8AF00AC9A23 /* MainViewController.h */, + DE800B2922A2F8AF00AC9A23 /* MainViewController.m */, + DE800B1322A2F8AF00AC9A23 /* MainViewController.xib */, + DE800B1722A2F8AF00AC9A23 /* MainViewController+App.h */, + DE800B2F22A2F8AF00AC9A23 /* MainViewController+App.m */, + DE800B3822A2F8AF00AC9A23 /* MainViewController+Auth.h */, + DE800B2322A2F8AF00AC9A23 /* MainViewController+Auth.m */, + DE800B0F22A2F8AF00AC9A23 /* MainViewController+AutoTests.h */, + DE800B2B22A2F8AF00AC9A23 /* MainViewController+AutoTests.m */, + DE800B2A22A2F8AF00AC9A23 /* MainViewController+Custom.h */, + DE800B1122A2F8AF00AC9A23 /* MainViewController+Custom.m */, + DE800B3722A2F8AF00AC9A23 /* MainViewController+Email.h */, + DE800B2222A2F8AF00AC9A23 /* MainViewController+Email.m */, + DE800B3E22A2F8AF00AC9A23 /* MainViewController+Facebook.h */, + DE800B1C22A2F8AF00AC9A23 /* MainViewController+Facebook.m */, + DE800B4222A2F8AF00AC9A23 /* MainViewController+GameCenter.h */, + DE800B1922A2F8AF00AC9A23 /* MainViewController+GameCenter.m */, + DE800B2122A2F8AF00AC9A23 /* MainViewController+Google.h */, + DE800B3922A2F8AF00AC9A23 /* MainViewController+Google.m */, + DE800B3022A2F8AF00AC9A23 /* MainViewController+Internal.h */, + 400283E823EA254A0006A298 /* MainViewController+MultiFactor.h */, + 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */, + DE800B1622A2F8AF00AC9A23 /* MainViewController+OAuth.h */, + DE800B3122A2F8AF00AC9A23 /* MainViewController+OAuth.m */, + DE800B1022A2F8AF00AC9A23 /* MainViewController+OOB.h */, + DE800B2C22A2F8AF00AC9A23 /* MainViewController+OOB.m */, + DE800B3F22A2F8AF00AC9A23 /* MainViewController+Phone.h */, + DE800B1A22A2F8AF00AC9A23 /* MainViewController+Phone.m */, + DE800B4322A2F8AF00AC9A23 /* MainViewController+User.h */, + DE800B1822A2F8AF00AC9A23 /* MainViewController+User.m */, + DE800B6A22A2FF8700AC9A23 /* Sample.entitlements */, + DE800B2522A2F8AF00AC9A23 /* SampleTemplate.entitlements */, + DE800B3522A2F8AF00AC9A23 /* SettingsViewController.h */, + DE800B1222A2F8AF00AC9A23 /* SettingsViewController.m */, + DE800B4122A2F8AF00AC9A23 /* SettingsViewController.xib */, + DE800B2422A2F8AF00AC9A23 /* StaticContentTableViewManager.h */, + DE800B3622A2F8AF00AC9A23 /* StaticContentTableViewManager.m */, + DE800B3A22A2F8AF00AC9A23 /* UIViewController+Alerts.h */, + DE800B2022A2F8AF00AC9A23 /* UIViewController+Alerts.m */, + DE800B1522A2F8AF00AC9A23 /* UserInfoViewController.h */, + DE800B3422A2F8AF00AC9A23 /* UserInfoViewController.m */, + DE800B2822A2F8AF00AC9A23 /* UserInfoViewController.xib */, + DE800B4022A2F8AF00AC9A23 /* UserTableViewCell.h */, + DE800B1B22A2F8AF00AC9A23 /* UserTableViewCell.m */, + ); + path = Sample; + sourceTree = SOURCE_ROOT; + }; + DE800B7222A5927C00AC9A23 /* Auth_ApiTests */ = { + isa = PBXGroup; + children = ( + DED400AB243E56F500BF6D56 /* AccountInfoTests.m */, + DED400A8243E56F500BF6D56 /* AnonymousAuthTests.m */, + DED400A3243E56F500BF6D56 /* AuthCredentials.h */, + DED400A7243E56F500BF6D56 /* AuthCredentialsTemplate.h */, + DED400AD243E56F500BF6D56 /* CustomAuthTests.m */, + DED400AC243E56F500BF6D56 /* EmailPasswordAuthTests.m */, + DED400A4243E56F500BF6D56 /* FacebookAuthTests.m */, + DED400AA243E56F500BF6D56 /* FIRAuthApiTestsBase.h */, + DED400AF243E56F500BF6D56 /* FIRAuthApiTestsBase.m */, + DED400A5243E56F500BF6D56 /* generate_refresh_token.sh */, + DED400AE243E56F500BF6D56 /* GoogleAuthTests.m */, + DED400A9243E56F500BF6D56 /* Info.plist */, + DED400A6243E56F500BF6D56 /* PhoneMultiFactorTests.swift */, + ); + name = Auth_ApiTests; + path = ApiTests; + sourceTree = SOURCE_ROOT; + }; + DE800B9622A5BD1800AC9A23 /* E2eTests */ = { + isa = PBXGroup; + children = ( + DED400BC243E571500BF6D56 /* BYOAuthTests.m */, + DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */, + DED400BD243E571500BF6D56 /* FIRAuthE2eTestsBase.h */, + DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */, + DED400BA243E571500BF6D56 /* Info.plist */, + DED400BB243E571500BF6D56 /* VerifyIOSClientTests.m */, + ); + path = E2eTests; + sourceTree = SOURCE_ROOT; + }; + DEBEF6042450EA27005E1A8F /* SwiftApiTests */ = { + isa = PBXGroup; + children = ( + DEBEF6072450EA27005E1A8F /* Info.plist */, + DEBEF60D245247A0005E1A8F /* AccountInfoTests.swift */, + DE1865AB245B879B00F8AD70 /* TestsBase.swift */, + DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */, + DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */, + DE1865B3245C92A600F8AD70 /* GoogleTests.swift */, + DE1865B5245C95DA00F8AD70 /* Credentials.swift */, + DE1865B7245CC6FC00F8AD70 /* FacebookTests.swift */, + DEF68E942799B9970064CC92 /* SwiftAPI.swift */, + ); + path = SwiftApiTests; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ - DE800AF322A2F87E00AC9A23 /* AuthSample */ = { - isa = PBXNativeTarget; - buildConfigurationList = DE800B0A22A2F88000AC9A23 /* Build configuration list for PBXNativeTarget "AuthSample" */; - buildPhases = ( - 6E443E69F97F9D8B522B6BD2 /* [CP] Check Pods Manifest.lock */, - DE800AF022A2F87E00AC9A23 /* Sources */, - DE800AF122A2F87E00AC9A23 /* Frameworks */, - DE800AF222A2F87E00AC9A23 /* Resources */, - 3B56363253287110A0B8A8B7 /* [CP] Embed Pods Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = AuthSample; - productName = AuthSample; - productReference = DE800AF422A2F87E00AC9A23 /* AuthSample.app */; - productType = "com.apple.product-type.application"; - }; - DE800B7022A5927C00AC9A23 /* Auth_ApiTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = DE800B7A22A5927C00AC9A23 /* Build configuration list for PBXNativeTarget "Auth_ApiTests" */; - buildPhases = ( - 398665313C934F44F17AAD71 /* [CP] Check Pods Manifest.lock */, - DE800B6D22A5927C00AC9A23 /* Sources */, - DE800B6E22A5927C00AC9A23 /* Frameworks */, - DE800B6F22A5927C00AC9A23 /* Resources */, - EBE4C98CFE4D95E43BEE3119 /* [CP] Embed Pods Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - DE800B7722A5927C00AC9A23 /* PBXTargetDependency */, - ); - name = Auth_ApiTests; - productName = Auth_ApiTests; - productReference = DE800B7122A5927C00AC9A23 /* Auth_ApiTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - DE800B9422A5BD1800AC9A23 /* Auth_E2eTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = DE800B9C22A5BD1800AC9A23 /* Build configuration list for PBXNativeTarget "Auth_E2eTests" */; - buildPhases = ( - EC843A773540DCA96200DC21 /* [CP] Check Pods Manifest.lock */, - DE800B9122A5BD1800AC9A23 /* Sources */, - DE800B9222A5BD1800AC9A23 /* Frameworks */, - DE800B9322A5BD1800AC9A23 /* Resources */, - B62EC7DEFEC79BE35B83BF6F /* [CP] Embed Pods Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - DE800B9B22A5BD1800AC9A23 /* PBXTargetDependency */, - ); - name = Auth_E2eTests; - productName = Auth_E2eTests; - productReference = DE800B9522A5BD1800AC9A23 /* Auth_E2eTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - DEBEF6022450EA27005E1A8F /* SwiftApiTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = DEBEF60A2450EA27005E1A8F /* Build configuration list for PBXNativeTarget "SwiftApiTests" */; - buildPhases = ( - 5B47162ED76807737D484CD1 /* [CP] Check Pods Manifest.lock */, - DEBEF5FF2450EA27005E1A8F /* Sources */, - DEBEF6002450EA27005E1A8F /* Frameworks */, - DEBEF6012450EA27005E1A8F /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - DEBEF6092450EA27005E1A8F /* PBXTargetDependency */, - ); - name = SwiftApiTests; - productName = SwiftApiTests; - productReference = DEBEF6032450EA27005E1A8F /* SwiftApiTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; + DE800AF322A2F87E00AC9A23 /* AuthSample */ = { + isa = PBXNativeTarget; + buildConfigurationList = DE800B0A22A2F88000AC9A23 /* Build configuration list for PBXNativeTarget "AuthSample" */; + buildPhases = ( + DE800AF022A2F87E00AC9A23 /* Sources */, + DE800AF122A2F87E00AC9A23 /* Frameworks */, + DE800AF222A2F87E00AC9A23 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = AuthSample; + productName = AuthSample; + productReference = DE800AF422A2F87E00AC9A23 /* AuthSample.app */; + productType = "com.apple.product-type.application"; + }; + DE800B7022A5927C00AC9A23 /* Auth_ApiTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = DE800B7A22A5927C00AC9A23 /* Build configuration list for PBXNativeTarget "Auth_ApiTests" */; + buildPhases = ( + DE800B6D22A5927C00AC9A23 /* Sources */, + DE800B6E22A5927C00AC9A23 /* Frameworks */, + DE800B6F22A5927C00AC9A23 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + DE800B7722A5927C00AC9A23 /* PBXTargetDependency */, + ); + name = Auth_ApiTests; + productName = Auth_ApiTests; + productReference = DE800B7122A5927C00AC9A23 /* Auth_ApiTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + DE800B9422A5BD1800AC9A23 /* Auth_E2eTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = DE800B9C22A5BD1800AC9A23 /* Build configuration list for PBXNativeTarget "Auth_E2eTests" */; + buildPhases = ( + DE800B9122A5BD1800AC9A23 /* Sources */, + DE800B9222A5BD1800AC9A23 /* Frameworks */, + DE800B9322A5BD1800AC9A23 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + DE800B9B22A5BD1800AC9A23 /* PBXTargetDependency */, + ); + name = Auth_E2eTests; + productName = Auth_E2eTests; + productReference = DE800B9522A5BD1800AC9A23 /* Auth_E2eTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + DEBEF6022450EA27005E1A8F /* SwiftApiTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = DEBEF60A2450EA27005E1A8F /* Build configuration list for PBXNativeTarget "SwiftApiTests" */; + buildPhases = ( + DEBEF5FF2450EA27005E1A8F /* Sources */, + DEBEF6002450EA27005E1A8F /* Frameworks */, + DEBEF6012450EA27005E1A8F /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + DEBEF6092450EA27005E1A8F /* PBXTargetDependency */, + ); + name = SwiftApiTests; + productName = SwiftApiTests; + productReference = DEBEF6032450EA27005E1A8F /* SwiftApiTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ - DE800AEC22A2F87E00AC9A23 /* Project object */ = { - isa = PBXProject; - attributes = { - LastSwiftUpdateCheck = 1140; - LastUpgradeCheck = 1340; - ORGANIZATIONNAME = Firebase; - TargetAttributes = { - DE800AF322A2F87E00AC9A23 = { - CreatedOnToolsVersion = 10.2; - LastSwiftMigration = 1140; - }; - DE800B7022A5927C00AC9A23 = { - CreatedOnToolsVersion = 10.2; - LastSwiftMigration = 1020; - TestTargetID = DE800AF322A2F87E00AC9A23; - }; - DE800B9422A5BD1800AC9A23 = { - CreatedOnToolsVersion = 10.2; - TestTargetID = DE800AF322A2F87E00AC9A23; - }; - DEBEF6022450EA27005E1A8F = { - CreatedOnToolsVersion = 11.4.1; - TestTargetID = DE800AF322A2F87E00AC9A23; - }; - }; - }; - buildConfigurationList = DE800AEF22A2F87E00AC9A23 /* Build configuration list for PBXProject "AuthSample" */; - compatibilityVersion = "Xcode 9.3"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = DE800AEB22A2F87E00AC9A23; - productRefGroup = DE800AF522A2F87E00AC9A23 /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - DE800AF322A2F87E00AC9A23 /* AuthSample */, - DE800B7022A5927C00AC9A23 /* Auth_ApiTests */, - DE800B9422A5BD1800AC9A23 /* Auth_E2eTests */, - DEBEF6022450EA27005E1A8F /* SwiftApiTests */, - ); - }; + DE800AEC22A2F87E00AC9A23 /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 1140; + LastUpgradeCheck = 1020; + ORGANIZATIONNAME = Firebase; + TargetAttributes = { + DE800AF322A2F87E00AC9A23 = { + CreatedOnToolsVersion = 10.2; + LastSwiftMigration = 1140; + }; + DE800B7022A5927C00AC9A23 = { + CreatedOnToolsVersion = 10.2; + LastSwiftMigration = 1020; + TestTargetID = DE800AF322A2F87E00AC9A23; + }; + DE800B9422A5BD1800AC9A23 = { + CreatedOnToolsVersion = 10.2; + TestTargetID = DE800AF322A2F87E00AC9A23; + }; + DEBEF6022450EA27005E1A8F = { + CreatedOnToolsVersion = 11.4.1; + TestTargetID = DE800AF322A2F87E00AC9A23; + }; + }; + }; + buildConfigurationList = DE800AEF22A2F87E00AC9A23 /* Build configuration list for PBXProject "AuthSample" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = DE800AEB22A2F87E00AC9A23; + productRefGroup = DE800AF522A2F87E00AC9A23 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + DE800AF322A2F87E00AC9A23 /* AuthSample */, + DE800B7022A5927C00AC9A23 /* Auth_ApiTests */, + DE800B9422A5BD1800AC9A23 /* Auth_E2eTests */, + DEBEF6022450EA27005E1A8F /* SwiftApiTests */, + ); + }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ - DE800AF222A2F87E00AC9A23 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DE800B5422A2F8AF00AC9A23 /* UserInfoViewController.xib in Resources */, - DE800B5C22A2F8AF00AC9A23 /* Images.xcassets in Resources */, - DE800B4922A2F8AF00AC9A23 /* MainViewController.xib in Resources */, - DE800B6722A2FF7300AC9A23 /* GoogleService-Info_multi.plist in Resources */, - DE800B6322A2F8AF00AC9A23 /* SettingsViewController.xib in Resources */, - DE800B6822A2FF7300AC9A23 /* GoogleService-Info.plist in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DE800B6F22A5927C00AC9A23 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DED400B1243E56F500BF6D56 /* generate_refresh_token.sh in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DE800B9322A5BD1800AC9A23 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DEBEF6012450EA27005E1A8F /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; + DE800AF222A2F87E00AC9A23 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DE800B5422A2F8AF00AC9A23 /* UserInfoViewController.xib in Resources */, + DE800B5C22A2F8AF00AC9A23 /* Images.xcassets in Resources */, + DE800B4922A2F8AF00AC9A23 /* MainViewController.xib in Resources */, + DE800B6722A2FF7300AC9A23 /* GoogleService-Info_multi.plist in Resources */, + DE800B6322A2F8AF00AC9A23 /* SettingsViewController.xib in Resources */, + DE800B6822A2FF7300AC9A23 /* GoogleService-Info.plist in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE800B6F22A5927C00AC9A23 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DED400B1243E56F500BF6D56 /* generate_refresh_token.sh in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE800B9322A5BD1800AC9A23 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DEBEF6012450EA27005E1A8F /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - 398665313C934F44F17AAD71 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Auth_ApiTests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - 3B56363253287110A0B8A8B7 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-AuthSample/Pods-AuthSample-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-AuthSample/Pods-AuthSample-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-AuthSample/Pods-AuthSample-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - 5B47162ED76807737D484CD1 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-SwiftApiTests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - 6E443E69F97F9D8B522B6BD2 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-AuthSample-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; - B62EC7DEFEC79BE35B83BF6F /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Auth_E2eTests/Pods-Auth_E2eTests-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - EBE4C98CFE4D95E43BEE3119 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Auth_ApiTests/Pods-Auth_ApiTests-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - EC843A773540DCA96200DC21 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Auth_E2eTests-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ - DE800AF022A2F87E00AC9A23 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DE800B5722A2F8AF00AC9A23 /* MainViewController+OOB.m in Sources */, - DE800B4E22A2F8AF00AC9A23 /* UserTableViewCell.m in Sources */, - DE800B6422A2F8AF00AC9A23 /* AuthProviders.m in Sources */, - DE800B4F22A2F8AF00AC9A23 /* MainViewController+Facebook.m in Sources */, - DE800B4D22A2F8AF00AC9A23 /* MainViewController+Phone.m in Sources */, - DE800B4722A2F8AF00AC9A23 /* MainViewController+Custom.m in Sources */, - 400283EA23EA254B0006A298 /* MainViewController+MultiFactor.m in Sources */, - DE800B5A22A2F8AF00AC9A23 /* MainViewController+App.m in Sources */, - DE800B6222A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m in Sources */, - DE800B6122A2F8AF00AC9A23 /* ApplicationDelegate.m in Sources */, - DE800B4A22A2F8AF00AC9A23 /* GoogleAuthProvider.m in Sources */, - DE800B5B22A2F8AF00AC9A23 /* MainViewController+OAuth.m in Sources */, - DE800B6022A2F8AF00AC9A23 /* FacebookAuthProvider.m in Sources */, - DE800B5922A2F8AF00AC9A23 /* main.m in Sources */, - DE800B5222A2F8AF00AC9A23 /* MainViewController+Auth.m in Sources */, - DE800B5F22A2F8AF00AC9A23 /* MainViewController+Google.m in Sources */, - DE800B5D22A2F8AF00AC9A23 /* UserInfoViewController.m in Sources */, - DE800B4B22A2F8AF00AC9A23 /* MainViewController+User.m in Sources */, - DE800B5522A2F8AF00AC9A23 /* MainViewController.m in Sources */, - DE800B5122A2F8AF00AC9A23 /* MainViewController+Email.m in Sources */, - DE800B5022A2F8AF00AC9A23 /* UIViewController+Alerts.m in Sources */, - DE800B5E22A2F8AF00AC9A23 /* StaticContentTableViewManager.m in Sources */, - DE800B4C22A2F8AF00AC9A23 /* MainViewController+GameCenter.m in Sources */, - DE800B4822A2F8AF00AC9A23 /* SettingsViewController.m in Sources */, - DE800B5622A2F8AF00AC9A23 /* MainViewController+AutoTests.m in Sources */, - DE800B5822A2F8AF00AC9A23 /* AppManager.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DE800B6D22A5927C00AC9A23 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DED400B0243E56F500BF6D56 /* FacebookAuthTests.m in Sources */, - DED400B5243E56F500BF6D56 /* AccountInfoTests.m in Sources */, - DED400B6243E56F500BF6D56 /* EmailPasswordAuthTests.m in Sources */, - DED400B9243E56F500BF6D56 /* FIRAuthApiTestsBase.m in Sources */, - DED400B3243E56F500BF6D56 /* AnonymousAuthTests.m in Sources */, - DED400B7243E56F500BF6D56 /* CustomAuthTests.m in Sources */, - DED400B8243E56F500BF6D56 /* GoogleAuthTests.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DE800B9122A5BD1800AC9A23 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DED400C2243E571500BF6D56 /* BYOAuthTests.m in Sources */, - DED400C4243E571500BF6D56 /* FIRAuthE2eTestsBase.m in Sources */, - DED400C1243E571500BF6D56 /* VerifyIOSClientTests.m in Sources */, - DED400C3243E571500BF6D56 /* FIRAuthE2eTests.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DEBEF5FF2450EA27005E1A8F /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DEF68E952799B9970064CC92 /* SwiftAPI.swift in Sources */, - DE1865B4245C92A600F8AD70 /* GoogleTests.swift in Sources */, - DE1865AE245B8A1400F8AD70 /* AnonymousTests.swift in Sources */, - DE1865B8245CC6FC00F8AD70 /* FacebookTests.swift in Sources */, - DE1865B6245C95DA00F8AD70 /* Credentials.swift in Sources */, - DE1865B2245C7A2B00F8AD70 /* EmailPasswordTests.swift in Sources */, - DE1865AC245B879B00F8AD70 /* TestsBase.swift in Sources */, - DEBEF60E245247A0005E1A8F /* AccountInfoTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; + DE800AF022A2F87E00AC9A23 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DE800B5722A2F8AF00AC9A23 /* MainViewController+OOB.m in Sources */, + DE800B4E22A2F8AF00AC9A23 /* UserTableViewCell.m in Sources */, + DE800B6422A2F8AF00AC9A23 /* AuthProviders.m in Sources */, + DE800B4F22A2F8AF00AC9A23 /* MainViewController+Facebook.m in Sources */, + DE800B4D22A2F8AF00AC9A23 /* MainViewController+Phone.m in Sources */, + DE800B4722A2F8AF00AC9A23 /* MainViewController+Custom.m in Sources */, + 400283EA23EA254B0006A298 /* MainViewController+MultiFactor.m in Sources */, + DE800B5A22A2F8AF00AC9A23 /* MainViewController+App.m in Sources */, + DE800B6222A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m in Sources */, + DE800B6122A2F8AF00AC9A23 /* ApplicationDelegate.m in Sources */, + DE800B4A22A2F8AF00AC9A23 /* GoogleAuthProvider.m in Sources */, + DE800B5B22A2F8AF00AC9A23 /* MainViewController+OAuth.m in Sources */, + DE800B6022A2F8AF00AC9A23 /* FacebookAuthProvider.m in Sources */, + DE800B5922A2F8AF00AC9A23 /* main.m in Sources */, + DE800B5222A2F8AF00AC9A23 /* MainViewController+Auth.m in Sources */, + DE800B5F22A2F8AF00AC9A23 /* MainViewController+Google.m in Sources */, + DE800B5D22A2F8AF00AC9A23 /* UserInfoViewController.m in Sources */, + DE800B4B22A2F8AF00AC9A23 /* MainViewController+User.m in Sources */, + DE800B5522A2F8AF00AC9A23 /* MainViewController.m in Sources */, + DE800B5122A2F8AF00AC9A23 /* MainViewController+Email.m in Sources */, + DE800B5022A2F8AF00AC9A23 /* UIViewController+Alerts.m in Sources */, + DE800B5E22A2F8AF00AC9A23 /* StaticContentTableViewManager.m in Sources */, + DE800B4C22A2F8AF00AC9A23 /* MainViewController+GameCenter.m in Sources */, + DE800B4822A2F8AF00AC9A23 /* SettingsViewController.m in Sources */, + DE800B5622A2F8AF00AC9A23 /* MainViewController+AutoTests.m in Sources */, + DE800B5822A2F8AF00AC9A23 /* AppManager.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE800B6D22A5927C00AC9A23 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DED400B0243E56F500BF6D56 /* FacebookAuthTests.m in Sources */, + DED400B5243E56F500BF6D56 /* AccountInfoTests.m in Sources */, + DED400B6243E56F500BF6D56 /* EmailPasswordAuthTests.m in Sources */, + DED400B9243E56F500BF6D56 /* FIRAuthApiTestsBase.m in Sources */, + DED400B3243E56F500BF6D56 /* AnonymousAuthTests.m in Sources */, + DED400B7243E56F500BF6D56 /* CustomAuthTests.m in Sources */, + DED400B8243E56F500BF6D56 /* GoogleAuthTests.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE800B9122A5BD1800AC9A23 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DED400C2243E571500BF6D56 /* BYOAuthTests.m in Sources */, + DED400C4243E571500BF6D56 /* FIRAuthE2eTestsBase.m in Sources */, + DED400C1243E571500BF6D56 /* VerifyIOSClientTests.m in Sources */, + DED400C3243E571500BF6D56 /* FIRAuthE2eTests.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DEBEF5FF2450EA27005E1A8F /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DEF68E952799B9970064CC92 /* SwiftAPI.swift in Sources */, + DE1865B4245C92A600F8AD70 /* GoogleTests.swift in Sources */, + DE1865AE245B8A1400F8AD70 /* AnonymousTests.swift in Sources */, + DE1865B8245CC6FC00F8AD70 /* FacebookTests.swift in Sources */, + DE1865B6245C95DA00F8AD70 /* Credentials.swift in Sources */, + DE1865B2245C7A2B00F8AD70 /* EmailPasswordTests.swift in Sources */, + DE1865AC245B879B00F8AD70 /* TestsBase.swift in Sources */, + DEBEF60E245247A0005E1A8F /* AccountInfoTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - DE800B7722A5927C00AC9A23 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = DE800AF322A2F87E00AC9A23 /* AuthSample */; - targetProxy = DE800B7622A5927C00AC9A23 /* PBXContainerItemProxy */; - }; - DE800B9B22A5BD1800AC9A23 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = DE800AF322A2F87E00AC9A23 /* AuthSample */; - targetProxy = DE800B9A22A5BD1800AC9A23 /* PBXContainerItemProxy */; - }; - DEBEF6092450EA27005E1A8F /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = DE800AF322A2F87E00AC9A23 /* AuthSample */; - targetProxy = DEBEF6082450EA27005E1A8F /* PBXContainerItemProxy */; - }; + DE800B7722A5927C00AC9A23 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = DE800AF322A2F87E00AC9A23 /* AuthSample */; + targetProxy = DE800B7622A5927C00AC9A23 /* PBXContainerItemProxy */; + }; + DE800B9B22A5BD1800AC9A23 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = DE800AF322A2F87E00AC9A23 /* AuthSample */; + targetProxy = DE800B9A22A5BD1800AC9A23 /* PBXContainerItemProxy */; + }; + DEBEF6092450EA27005E1A8F /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = DE800AF322A2F87E00AC9A23 /* AuthSample */; + targetProxy = DEBEF6082450EA27005E1A8F /* PBXContainerItemProxy */; + }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ - DE800B0822A2F88000AC9A23 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = arm64; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.1; - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - }; - name = Debug; - }; - DE800B0922A2F88000AC9A23 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.1; - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - SDKROOT = iphoneos; - SWIFT_COMPILATION_MODE = wholemodule; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - DE800B0B22A2F88000AC9A23 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 2FF8EE500CF78004FC65C179 /* Pods-AuthSample.debug.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Sample/Sample.entitlements; - CODE_SIGN_STYLE = Automatic; - "EXCLUDED_ARCHS[sdk=iphonesimulator*]" = ""; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "${SRCROOT}/../../..", - ); - INFOPLIST_FILE = Sample/Application.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.firebase.auth1; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - DE800B0C22A2F88000AC9A23 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = A1DE7ED770F906C5B9750C49 /* Pods-AuthSample.release.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Sample/Sample.entitlements; - CODE_SIGN_STYLE = Automatic; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "${SRCROOT}/../../..", - ); - INFOPLIST_FILE = Sample/Application.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.firebase.auth1; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Release; - }; - DE800B7822A5927C00AC9A23 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 1A7717341987080791B5A4C0 /* Pods-Auth_ApiTests.debug.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = ApiTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-ApiTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "../ApiTests/Auth_ApiTests-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; - }; - name = Debug; - }; - DE800B7922A5927C00AC9A23 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = AF3816DA4B5B0385038F24E3 /* Pods-Auth_ApiTests.release.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = ApiTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-ApiTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "../ApiTests/Auth_ApiTests-Bridging-Header.h"; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; - }; - name = Release; - }; - DE800B9D22A5BD1800AC9A23 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 9E4DB36B019BA019C9EA4229 /* Pods-Auth_E2eTests.debug.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = E2eTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-E2eTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; - }; - name = Debug; - }; - DE800B9E22A5BD1800AC9A23 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = B8F193D66088DE1B34480177 /* Pods-Auth_E2eTests.release.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = E2eTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-E2eTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; - }; - name = Release; - }; - DEBEF60B2450EA27005E1A8F /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 0470AED2ED2D120262F08CCB /* Pods-SwiftApiTests.debug.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = SwiftApiTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.1; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.google.firebase.SwiftApiTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; - }; - name = Debug; - }; - DEBEF60C2450EA27005E1A8F /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = DFA27C5857B4273250BE0B77 /* Pods-SwiftApiTests.release.xcconfig */; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = SwiftApiTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.1; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.google.firebase.SwiftApiTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; - }; - name = Release; - }; + DE800B0822A2F88000AC9A23 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.1; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + }; + name = Debug; + }; + DE800B0922A2F88000AC9A23 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.1; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = iphoneos; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + DE800B0B22A2F88000AC9A23 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Sample/Sample.entitlements; + CODE_SIGN_STYLE = Automatic; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "${SRCROOT}/../../..", + ); + INFOPLIST_FILE = Sample/Application.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.google.FirebaseExperimental1; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + DE800B0C22A2F88000AC9A23 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Sample/Sample.entitlements; + CODE_SIGN_STYLE = Automatic; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "${SRCROOT}/../../..", + ); + INFOPLIST_FILE = Sample/Application.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.google.FirebaseExperimental1; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; + DE800B7822A5927C00AC9A23 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = ApiTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-ApiTests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "../ApiTests/Auth_ApiTests-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; + }; + name = Debug; + }; + DE800B7922A5927C00AC9A23 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = ApiTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-ApiTests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "../ApiTests/Auth_ApiTests-Bridging-Header.h"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; + }; + name = Release; + }; + DE800B9D22A5BD1800AC9A23 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = E2eTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-E2eTests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; + }; + name = Debug; + }; + DE800B9E22A5BD1800AC9A23 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = E2eTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-E2eTests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; + }; + name = Release; + }; + DEBEF60B2450EA27005E1A8F /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = SwiftApiTests/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.1; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.google.firebase.SwiftApiTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; + }; + name = Debug; + }; + DEBEF60C2450EA27005E1A8F /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = SwiftApiTests/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.1; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.google.firebase.SwiftApiTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; + }; + name = Release; + }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - DE800AEF22A2F87E00AC9A23 /* Build configuration list for PBXProject "AuthSample" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - DE800B0822A2F88000AC9A23 /* Debug */, - DE800B0922A2F88000AC9A23 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - DE800B0A22A2F88000AC9A23 /* Build configuration list for PBXNativeTarget "AuthSample" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - DE800B0B22A2F88000AC9A23 /* Debug */, - DE800B0C22A2F88000AC9A23 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - DE800B7A22A5927C00AC9A23 /* Build configuration list for PBXNativeTarget "Auth_ApiTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - DE800B7822A5927C00AC9A23 /* Debug */, - DE800B7922A5927C00AC9A23 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - DE800B9C22A5BD1800AC9A23 /* Build configuration list for PBXNativeTarget "Auth_E2eTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - DE800B9D22A5BD1800AC9A23 /* Debug */, - DE800B9E22A5BD1800AC9A23 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - DEBEF60A2450EA27005E1A8F /* Build configuration list for PBXNativeTarget "SwiftApiTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - DEBEF60B2450EA27005E1A8F /* Debug */, - DEBEF60C2450EA27005E1A8F /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; + DE800AEF22A2F87E00AC9A23 /* Build configuration list for PBXProject "AuthSample" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + DE800B0822A2F88000AC9A23 /* Debug */, + DE800B0922A2F88000AC9A23 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + DE800B0A22A2F88000AC9A23 /* Build configuration list for PBXNativeTarget "AuthSample" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + DE800B0B22A2F88000AC9A23 /* Debug */, + DE800B0C22A2F88000AC9A23 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + DE800B7A22A5927C00AC9A23 /* Build configuration list for PBXNativeTarget "Auth_ApiTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + DE800B7822A5927C00AC9A23 /* Debug */, + DE800B7922A5927C00AC9A23 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + DE800B9C22A5BD1800AC9A23 /* Build configuration list for PBXNativeTarget "Auth_E2eTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + DE800B9D22A5BD1800AC9A23 /* Debug */, + DE800B9E22A5BD1800AC9A23 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + DEBEF60A2450EA27005E1A8F /* Build configuration list for PBXNativeTarget "SwiftApiTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + DEBEF60B2450EA27005E1A8F /* Debug */, + DEBEF60C2450EA27005E1A8F /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; /* End XCConfigurationList section */ - }; - rootObject = DE800AEC22A2F87E00AC9A23 /* Project object */; + }; + rootObject = DE800AEC22A2F87E00AC9A23 /* Project object */; } From 32723a47c926da923c142a981db5864e34069b72 Mon Sep 17 00:00:00 2001 From: Yvonne Cheng Date: Mon, 8 Aug 2022 21:31:06 -0700 Subject: [PATCH 06/23] remove changes in AuthSample 2/5 --- .../xcshareddata/xcschemes/AuthSample.xcscheme | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/AuthSample.xcscheme b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/AuthSample.xcscheme index 51a1848207c..adb5894e740 100644 --- a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/AuthSample.xcscheme +++ b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/AuthSample.xcscheme @@ -1,6 +1,6 @@ Date: Mon, 8 Aug 2022 21:33:31 -0700 Subject: [PATCH 07/23] remove changes in AuthSample 3/5 --- .../xcshareddata/xcschemes/Auth_ApiTests.xcscheme | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_ApiTests.xcscheme b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_ApiTests.xcscheme index df76cae1734..816b94e83f9 100644 --- a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_ApiTests.xcscheme +++ b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_ApiTests.xcscheme @@ -1,6 +1,6 @@ + + + + @@ -74,4 +83,4 @@ buildConfiguration = "Release" revealArchiveInOrganizer = "YES"> - + \ No newline at end of file From b004ef5920b6ef04f7e16dd2b460fa0bf5b8c5d6 Mon Sep 17 00:00:00 2001 From: Yvonne Cheng Date: Mon, 8 Aug 2022 21:34:59 -0700 Subject: [PATCH 08/23] remove changes in AuthSample 4/5 --- .../xcshareddata/xcschemes/Auth_E2eTests.xcscheme | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_E2eTests.xcscheme b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_E2eTests.xcscheme index e168a7c0c44..8a72476098b 100644 --- a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_E2eTests.xcscheme +++ b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_E2eTests.xcscheme @@ -1,6 +1,6 @@ + + + + From e1450ea596162e8f58073418f173f16ae62666d9 Mon Sep 17 00:00:00 2001 From: Yvonne Cheng Date: Mon, 8 Aug 2022 21:36:20 -0700 Subject: [PATCH 09/23] remove changes in AuthSample 5/5 --- .../xcshareddata/xcschemes/SwiftApiTests.xcscheme | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/SwiftApiTests.xcscheme b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/SwiftApiTests.xcscheme index d0da96a31bd..5bbc32956aa 100644 --- a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/SwiftApiTests.xcscheme +++ b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/SwiftApiTests.xcscheme @@ -1,6 +1,6 @@ + + + + From 1b890f4bc56c7119b2525e695bc0f9b0568874d2 Mon Sep 17 00:00:00 2001 From: Yvonne Cheng Date: Tue, 9 Aug 2022 11:33:01 -0700 Subject: [PATCH 10/23] overwrite with master firles to remove white space changes in the two files --- .../AuthSample.xcodeproj/project.pbxproj | 1826 ++++++++--------- .../xcschemes/Auth_ApiTests.xcscheme | 2 +- 2 files changed, 914 insertions(+), 914 deletions(-) diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj index ba80986cd46..a126512cae3 100644 --- a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj +++ b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/project.pbxproj @@ -1,952 +1,952 @@ // !$*UTF8*$! { - archiveVersion = 1; - classes = { - }; - objectVersion = 50; - objects = { + archiveVersion = 1; + classes = { + }; + objectVersion = 50; + objects = { /* Begin PBXBuildFile section */ - 400283EA23EA254B0006A298 /* MainViewController+MultiFactor.m in Sources */ = {isa = PBXBuildFile; fileRef = 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */; }; - DE1865AC245B879B00F8AD70 /* TestsBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865AB245B879B00F8AD70 /* TestsBase.swift */; }; - DE1865AE245B8A1400F8AD70 /* AnonymousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */; }; - DE1865B2245C7A2B00F8AD70 /* EmailPasswordTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */; }; - DE1865B4245C92A600F8AD70 /* GoogleTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B3245C92A600F8AD70 /* GoogleTests.swift */; }; - DE1865B6245C95DA00F8AD70 /* Credentials.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B5245C95DA00F8AD70 /* Credentials.swift */; }; - DE1865B8245CC6FC00F8AD70 /* FacebookTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B7245CC6FC00F8AD70 /* FacebookTests.swift */; }; - DE800B4722A2F8AF00AC9A23 /* MainViewController+Custom.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1122A2F8AF00AC9A23 /* MainViewController+Custom.m */; }; - DE800B4822A2F8AF00AC9A23 /* SettingsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1222A2F8AF00AC9A23 /* SettingsViewController.m */; }; - DE800B4922A2F8AF00AC9A23 /* MainViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE800B1322A2F8AF00AC9A23 /* MainViewController.xib */; }; - DE800B4A22A2F8AF00AC9A23 /* GoogleAuthProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1422A2F8AF00AC9A23 /* GoogleAuthProvider.m */; }; - DE800B4B22A2F8AF00AC9A23 /* MainViewController+User.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1822A2F8AF00AC9A23 /* MainViewController+User.m */; }; - DE800B4C22A2F8AF00AC9A23 /* MainViewController+GameCenter.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1922A2F8AF00AC9A23 /* MainViewController+GameCenter.m */; }; - DE800B4D22A2F8AF00AC9A23 /* MainViewController+Phone.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1A22A2F8AF00AC9A23 /* MainViewController+Phone.m */; }; - DE800B4E22A2F8AF00AC9A23 /* UserTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1B22A2F8AF00AC9A23 /* UserTableViewCell.m */; }; - DE800B4F22A2F8AF00AC9A23 /* MainViewController+Facebook.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1C22A2F8AF00AC9A23 /* MainViewController+Facebook.m */; }; - DE800B5022A2F8AF00AC9A23 /* UIViewController+Alerts.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2022A2F8AF00AC9A23 /* UIViewController+Alerts.m */; }; - DE800B5122A2F8AF00AC9A23 /* MainViewController+Email.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2222A2F8AF00AC9A23 /* MainViewController+Email.m */; }; - DE800B5222A2F8AF00AC9A23 /* MainViewController+Auth.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2322A2F8AF00AC9A23 /* MainViewController+Auth.m */; }; - DE800B5422A2F8AF00AC9A23 /* UserInfoViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE800B2822A2F8AF00AC9A23 /* UserInfoViewController.xib */; }; - DE800B5522A2F8AF00AC9A23 /* MainViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2922A2F8AF00AC9A23 /* MainViewController.m */; }; - DE800B5622A2F8AF00AC9A23 /* MainViewController+AutoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2B22A2F8AF00AC9A23 /* MainViewController+AutoTests.m */; }; - DE800B5722A2F8AF00AC9A23 /* MainViewController+OOB.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2C22A2F8AF00AC9A23 /* MainViewController+OOB.m */; }; - DE800B5822A2F8AF00AC9A23 /* AppManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2D22A2F8AF00AC9A23 /* AppManager.m */; }; - DE800B5922A2F8AF00AC9A23 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2E22A2F8AF00AC9A23 /* main.m */; }; - DE800B5A22A2F8AF00AC9A23 /* MainViewController+App.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2F22A2F8AF00AC9A23 /* MainViewController+App.m */; }; - DE800B5B22A2F8AF00AC9A23 /* MainViewController+OAuth.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3122A2F8AF00AC9A23 /* MainViewController+OAuth.m */; }; - DE800B5C22A2F8AF00AC9A23 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = DE800B3222A2F8AF00AC9A23 /* Images.xcassets */; }; - DE800B5D22A2F8AF00AC9A23 /* UserInfoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3422A2F8AF00AC9A23 /* UserInfoViewController.m */; }; - DE800B5E22A2F8AF00AC9A23 /* StaticContentTableViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3622A2F8AF00AC9A23 /* StaticContentTableViewManager.m */; }; - DE800B5F22A2F8AF00AC9A23 /* MainViewController+Google.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3922A2F8AF00AC9A23 /* MainViewController+Google.m */; }; - DE800B6022A2F8AF00AC9A23 /* FacebookAuthProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3B22A2F8AF00AC9A23 /* FacebookAuthProvider.m */; }; - DE800B6122A2F8AF00AC9A23 /* ApplicationDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3C22A2F8AF00AC9A23 /* ApplicationDelegate.m */; }; - DE800B6222A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m */; }; - DE800B6322A2F8AF00AC9A23 /* SettingsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE800B4122A2F8AF00AC9A23 /* SettingsViewController.xib */; }; - DE800B6422A2F8AF00AC9A23 /* AuthProviders.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B4522A2F8AF00AC9A23 /* AuthProviders.m */; }; - DE800B6722A2FF7300AC9A23 /* GoogleService-Info_multi.plist in Resources */ = {isa = PBXBuildFile; fileRef = DE800B6522A2FF7300AC9A23 /* GoogleService-Info_multi.plist */; }; - DE800B6822A2FF7300AC9A23 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = DE800B6622A2FF7300AC9A23 /* GoogleService-Info.plist */; }; - DEBEF60E245247A0005E1A8F /* AccountInfoTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEBEF60D245247A0005E1A8F /* AccountInfoTests.swift */; }; - DED400B0243E56F500BF6D56 /* FacebookAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400A4243E56F500BF6D56 /* FacebookAuthTests.m */; }; - DED400B1243E56F500BF6D56 /* generate_refresh_token.sh in Resources */ = {isa = PBXBuildFile; fileRef = DED400A5243E56F500BF6D56 /* generate_refresh_token.sh */; }; - DED400B3243E56F500BF6D56 /* AnonymousAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400A8243E56F500BF6D56 /* AnonymousAuthTests.m */; }; - DED400B5243E56F500BF6D56 /* AccountInfoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AB243E56F500BF6D56 /* AccountInfoTests.m */; }; - DED400B6243E56F500BF6D56 /* EmailPasswordAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AC243E56F500BF6D56 /* EmailPasswordAuthTests.m */; }; - DED400B7243E56F500BF6D56 /* CustomAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AD243E56F500BF6D56 /* CustomAuthTests.m */; }; - DED400B8243E56F500BF6D56 /* GoogleAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AE243E56F500BF6D56 /* GoogleAuthTests.m */; }; - DED400B9243E56F500BF6D56 /* FIRAuthApiTestsBase.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AF243E56F500BF6D56 /* FIRAuthApiTestsBase.m */; }; - DED400C1243E571500BF6D56 /* VerifyIOSClientTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BB243E571500BF6D56 /* VerifyIOSClientTests.m */; }; - DED400C2243E571500BF6D56 /* BYOAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BC243E571500BF6D56 /* BYOAuthTests.m */; }; - DED400C3243E571500BF6D56 /* FIRAuthE2eTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */; }; - DED400C4243E571500BF6D56 /* FIRAuthE2eTestsBase.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */; }; - DEF68E952799B9970064CC92 /* SwiftAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEF68E942799B9970064CC92 /* SwiftAPI.swift */; }; + 400283EA23EA254B0006A298 /* MainViewController+MultiFactor.m in Sources */ = {isa = PBXBuildFile; fileRef = 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */; }; + DE1865AC245B879B00F8AD70 /* TestsBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865AB245B879B00F8AD70 /* TestsBase.swift */; }; + DE1865AE245B8A1400F8AD70 /* AnonymousTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */; }; + DE1865B2245C7A2B00F8AD70 /* EmailPasswordTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */; }; + DE1865B4245C92A600F8AD70 /* GoogleTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B3245C92A600F8AD70 /* GoogleTests.swift */; }; + DE1865B6245C95DA00F8AD70 /* Credentials.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B5245C95DA00F8AD70 /* Credentials.swift */; }; + DE1865B8245CC6FC00F8AD70 /* FacebookTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE1865B7245CC6FC00F8AD70 /* FacebookTests.swift */; }; + DE800B4722A2F8AF00AC9A23 /* MainViewController+Custom.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1122A2F8AF00AC9A23 /* MainViewController+Custom.m */; }; + DE800B4822A2F8AF00AC9A23 /* SettingsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1222A2F8AF00AC9A23 /* SettingsViewController.m */; }; + DE800B4922A2F8AF00AC9A23 /* MainViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE800B1322A2F8AF00AC9A23 /* MainViewController.xib */; }; + DE800B4A22A2F8AF00AC9A23 /* GoogleAuthProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1422A2F8AF00AC9A23 /* GoogleAuthProvider.m */; }; + DE800B4B22A2F8AF00AC9A23 /* MainViewController+User.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1822A2F8AF00AC9A23 /* MainViewController+User.m */; }; + DE800B4C22A2F8AF00AC9A23 /* MainViewController+GameCenter.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1922A2F8AF00AC9A23 /* MainViewController+GameCenter.m */; }; + DE800B4D22A2F8AF00AC9A23 /* MainViewController+Phone.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1A22A2F8AF00AC9A23 /* MainViewController+Phone.m */; }; + DE800B4E22A2F8AF00AC9A23 /* UserTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1B22A2F8AF00AC9A23 /* UserTableViewCell.m */; }; + DE800B4F22A2F8AF00AC9A23 /* MainViewController+Facebook.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B1C22A2F8AF00AC9A23 /* MainViewController+Facebook.m */; }; + DE800B5022A2F8AF00AC9A23 /* UIViewController+Alerts.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2022A2F8AF00AC9A23 /* UIViewController+Alerts.m */; }; + DE800B5122A2F8AF00AC9A23 /* MainViewController+Email.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2222A2F8AF00AC9A23 /* MainViewController+Email.m */; }; + DE800B5222A2F8AF00AC9A23 /* MainViewController+Auth.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2322A2F8AF00AC9A23 /* MainViewController+Auth.m */; }; + DE800B5422A2F8AF00AC9A23 /* UserInfoViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE800B2822A2F8AF00AC9A23 /* UserInfoViewController.xib */; }; + DE800B5522A2F8AF00AC9A23 /* MainViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2922A2F8AF00AC9A23 /* MainViewController.m */; }; + DE800B5622A2F8AF00AC9A23 /* MainViewController+AutoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2B22A2F8AF00AC9A23 /* MainViewController+AutoTests.m */; }; + DE800B5722A2F8AF00AC9A23 /* MainViewController+OOB.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2C22A2F8AF00AC9A23 /* MainViewController+OOB.m */; }; + DE800B5822A2F8AF00AC9A23 /* AppManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2D22A2F8AF00AC9A23 /* AppManager.m */; }; + DE800B5922A2F8AF00AC9A23 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2E22A2F8AF00AC9A23 /* main.m */; }; + DE800B5A22A2F8AF00AC9A23 /* MainViewController+App.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B2F22A2F8AF00AC9A23 /* MainViewController+App.m */; }; + DE800B5B22A2F8AF00AC9A23 /* MainViewController+OAuth.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3122A2F8AF00AC9A23 /* MainViewController+OAuth.m */; }; + DE800B5C22A2F8AF00AC9A23 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = DE800B3222A2F8AF00AC9A23 /* Images.xcassets */; }; + DE800B5D22A2F8AF00AC9A23 /* UserInfoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3422A2F8AF00AC9A23 /* UserInfoViewController.m */; }; + DE800B5E22A2F8AF00AC9A23 /* StaticContentTableViewManager.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3622A2F8AF00AC9A23 /* StaticContentTableViewManager.m */; }; + DE800B5F22A2F8AF00AC9A23 /* MainViewController+Google.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3922A2F8AF00AC9A23 /* MainViewController+Google.m */; }; + DE800B6022A2F8AF00AC9A23 /* FacebookAuthProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3B22A2F8AF00AC9A23 /* FacebookAuthProvider.m */; }; + DE800B6122A2F8AF00AC9A23 /* ApplicationDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3C22A2F8AF00AC9A23 /* ApplicationDelegate.m */; }; + DE800B6222A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B3D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m */; }; + DE800B6322A2F8AF00AC9A23 /* SettingsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = DE800B4122A2F8AF00AC9A23 /* SettingsViewController.xib */; }; + DE800B6422A2F8AF00AC9A23 /* AuthProviders.m in Sources */ = {isa = PBXBuildFile; fileRef = DE800B4522A2F8AF00AC9A23 /* AuthProviders.m */; }; + DE800B6722A2FF7300AC9A23 /* GoogleService-Info_multi.plist in Resources */ = {isa = PBXBuildFile; fileRef = DE800B6522A2FF7300AC9A23 /* GoogleService-Info_multi.plist */; }; + DE800B6822A2FF7300AC9A23 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = DE800B6622A2FF7300AC9A23 /* GoogleService-Info.plist */; }; + DEBEF60E245247A0005E1A8F /* AccountInfoTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEBEF60D245247A0005E1A8F /* AccountInfoTests.swift */; }; + DED400B0243E56F500BF6D56 /* FacebookAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400A4243E56F500BF6D56 /* FacebookAuthTests.m */; }; + DED400B1243E56F500BF6D56 /* generate_refresh_token.sh in Resources */ = {isa = PBXBuildFile; fileRef = DED400A5243E56F500BF6D56 /* generate_refresh_token.sh */; }; + DED400B3243E56F500BF6D56 /* AnonymousAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400A8243E56F500BF6D56 /* AnonymousAuthTests.m */; }; + DED400B5243E56F500BF6D56 /* AccountInfoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AB243E56F500BF6D56 /* AccountInfoTests.m */; }; + DED400B6243E56F500BF6D56 /* EmailPasswordAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AC243E56F500BF6D56 /* EmailPasswordAuthTests.m */; }; + DED400B7243E56F500BF6D56 /* CustomAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AD243E56F500BF6D56 /* CustomAuthTests.m */; }; + DED400B8243E56F500BF6D56 /* GoogleAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AE243E56F500BF6D56 /* GoogleAuthTests.m */; }; + DED400B9243E56F500BF6D56 /* FIRAuthApiTestsBase.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400AF243E56F500BF6D56 /* FIRAuthApiTestsBase.m */; }; + DED400C1243E571500BF6D56 /* VerifyIOSClientTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BB243E571500BF6D56 /* VerifyIOSClientTests.m */; }; + DED400C2243E571500BF6D56 /* BYOAuthTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BC243E571500BF6D56 /* BYOAuthTests.m */; }; + DED400C3243E571500BF6D56 /* FIRAuthE2eTests.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */; }; + DED400C4243E571500BF6D56 /* FIRAuthE2eTestsBase.m in Sources */ = {isa = PBXBuildFile; fileRef = DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */; }; + DEF68E952799B9970064CC92 /* SwiftAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEF68E942799B9970064CC92 /* SwiftAPI.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - DE800B7622A5927C00AC9A23 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = DE800AEC22A2F87E00AC9A23 /* Project object */; - proxyType = 1; - remoteGlobalIDString = DE800AF322A2F87E00AC9A23; - remoteInfo = AuthSample; - }; - DE800B9A22A5BD1800AC9A23 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = DE800AEC22A2F87E00AC9A23 /* Project object */; - proxyType = 1; - remoteGlobalIDString = DE800AF322A2F87E00AC9A23; - remoteInfo = AuthSample; - }; - DEBEF6082450EA27005E1A8F /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = DE800AEC22A2F87E00AC9A23 /* Project object */; - proxyType = 1; - remoteGlobalIDString = DE800AF322A2F87E00AC9A23; - remoteInfo = AuthSample; - }; + DE800B7622A5927C00AC9A23 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = DE800AEC22A2F87E00AC9A23 /* Project object */; + proxyType = 1; + remoteGlobalIDString = DE800AF322A2F87E00AC9A23; + remoteInfo = AuthSample; + }; + DE800B9A22A5BD1800AC9A23 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = DE800AEC22A2F87E00AC9A23 /* Project object */; + proxyType = 1; + remoteGlobalIDString = DE800AF322A2F87E00AC9A23; + remoteInfo = AuthSample; + }; + DEBEF6082450EA27005E1A8F /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = DE800AEC22A2F87E00AC9A23 /* Project object */; + proxyType = 1; + remoteGlobalIDString = DE800AF322A2F87E00AC9A23; + remoteInfo = AuthSample; + }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 400283E823EA254A0006A298 /* MainViewController+MultiFactor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+MultiFactor.h"; sourceTree = ""; }; - 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+MultiFactor.m"; sourceTree = ""; }; - DE1865AB245B879B00F8AD70 /* TestsBase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TestsBase.swift; sourceTree = ""; }; - DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnonymousTests.swift; sourceTree = ""; }; - DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmailPasswordTests.swift; sourceTree = ""; }; - DE1865B3245C92A600F8AD70 /* GoogleTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GoogleTests.swift; sourceTree = ""; }; - DE1865B5245C95DA00F8AD70 /* Credentials.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Credentials.swift; sourceTree = ""; }; - DE1865B7245CC6FC00F8AD70 /* FacebookTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FacebookTests.swift; sourceTree = ""; }; - DE800AF422A2F87E00AC9A23 /* AuthSample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = AuthSample.app; sourceTree = BUILT_PRODUCTS_DIR; }; - DE800B0E22A2F8AF00AC9A23 /* AppManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppManager.h; sourceTree = ""; }; - DE800B0F22A2F8AF00AC9A23 /* MainViewController+AutoTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+AutoTests.h"; sourceTree = ""; }; - DE800B1022A2F8AF00AC9A23 /* MainViewController+OOB.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+OOB.h"; sourceTree = ""; }; - DE800B1122A2F8AF00AC9A23 /* MainViewController+Custom.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Custom.m"; sourceTree = ""; }; - DE800B1222A2F8AF00AC9A23 /* SettingsViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SettingsViewController.m; sourceTree = ""; }; - DE800B1322A2F8AF00AC9A23 /* MainViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MainViewController.xib; sourceTree = ""; }; - DE800B1422A2F8AF00AC9A23 /* GoogleAuthProvider.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GoogleAuthProvider.m; sourceTree = ""; }; - DE800B1522A2F8AF00AC9A23 /* UserInfoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserInfoViewController.h; sourceTree = ""; }; - DE800B1622A2F8AF00AC9A23 /* MainViewController+OAuth.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+OAuth.h"; sourceTree = ""; }; - DE800B1722A2F8AF00AC9A23 /* MainViewController+App.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+App.h"; sourceTree = ""; }; - DE800B1822A2F8AF00AC9A23 /* MainViewController+User.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+User.m"; sourceTree = ""; }; - DE800B1922A2F8AF00AC9A23 /* MainViewController+GameCenter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+GameCenter.m"; sourceTree = ""; }; - DE800B1A22A2F8AF00AC9A23 /* MainViewController+Phone.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Phone.m"; sourceTree = ""; }; - DE800B1B22A2F8AF00AC9A23 /* UserTableViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UserTableViewCell.m; sourceTree = ""; }; - DE800B1C22A2F8AF00AC9A23 /* MainViewController+Facebook.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Facebook.m"; sourceTree = ""; }; - DE800B1D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CustomTokenDataEntryViewController.h; sourceTree = ""; }; - DE800B1E22A2F8AF00AC9A23 /* FacebookAuthProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FacebookAuthProvider.h; sourceTree = ""; }; - DE800B1F22A2F8AF00AC9A23 /* ApplicationDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ApplicationDelegate.h; sourceTree = ""; }; - DE800B2022A2F8AF00AC9A23 /* UIViewController+Alerts.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIViewController+Alerts.m"; sourceTree = ""; }; - DE800B2122A2F8AF00AC9A23 /* MainViewController+Google.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Google.h"; sourceTree = ""; }; - DE800B2222A2F8AF00AC9A23 /* MainViewController+Email.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Email.m"; sourceTree = ""; }; - DE800B2322A2F8AF00AC9A23 /* MainViewController+Auth.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Auth.m"; sourceTree = ""; }; - DE800B2422A2F8AF00AC9A23 /* StaticContentTableViewManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StaticContentTableViewManager.h; sourceTree = ""; }; - DE800B2522A2F8AF00AC9A23 /* SampleTemplate.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = SampleTemplate.entitlements; sourceTree = ""; }; - DE800B2622A2F8AF00AC9A23 /* AuthProviders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthProviders.h; sourceTree = ""; }; - DE800B2722A2F8AF00AC9A23 /* ApplicationTemplate.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = ApplicationTemplate.plist; sourceTree = ""; }; - DE800B2822A2F8AF00AC9A23 /* UserInfoViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = UserInfoViewController.xib; sourceTree = ""; }; - DE800B2922A2F8AF00AC9A23 /* MainViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MainViewController.m; sourceTree = ""; }; - DE800B2A22A2F8AF00AC9A23 /* MainViewController+Custom.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Custom.h"; sourceTree = ""; }; - DE800B2B22A2F8AF00AC9A23 /* MainViewController+AutoTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+AutoTests.m"; sourceTree = ""; }; - DE800B2C22A2F8AF00AC9A23 /* MainViewController+OOB.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+OOB.m"; sourceTree = ""; }; - DE800B2D22A2F8AF00AC9A23 /* AppManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppManager.m; sourceTree = ""; }; - DE800B2E22A2F8AF00AC9A23 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; - DE800B2F22A2F8AF00AC9A23 /* MainViewController+App.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+App.m"; sourceTree = ""; }; - DE800B3022A2F8AF00AC9A23 /* MainViewController+Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Internal.h"; sourceTree = ""; }; - DE800B3122A2F8AF00AC9A23 /* MainViewController+OAuth.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+OAuth.m"; sourceTree = ""; }; - DE800B3222A2F8AF00AC9A23 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; - DE800B3322A2F8AF00AC9A23 /* GoogleAuthProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GoogleAuthProvider.h; sourceTree = ""; }; - DE800B3422A2F8AF00AC9A23 /* UserInfoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UserInfoViewController.m; sourceTree = ""; }; - DE800B3522A2F8AF00AC9A23 /* SettingsViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SettingsViewController.h; sourceTree = ""; }; - DE800B3622A2F8AF00AC9A23 /* StaticContentTableViewManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StaticContentTableViewManager.m; sourceTree = ""; }; - DE800B3722A2F8AF00AC9A23 /* MainViewController+Email.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Email.h"; sourceTree = ""; }; - DE800B3822A2F8AF00AC9A23 /* MainViewController+Auth.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Auth.h"; sourceTree = ""; }; - DE800B3922A2F8AF00AC9A23 /* MainViewController+Google.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Google.m"; sourceTree = ""; }; - DE800B3A22A2F8AF00AC9A23 /* UIViewController+Alerts.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIViewController+Alerts.h"; sourceTree = ""; }; - DE800B3B22A2F8AF00AC9A23 /* FacebookAuthProvider.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FacebookAuthProvider.m; sourceTree = ""; }; - DE800B3C22A2F8AF00AC9A23 /* ApplicationDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ApplicationDelegate.m; sourceTree = ""; }; - DE800B3D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CustomTokenDataEntryViewController.m; sourceTree = ""; }; - DE800B3E22A2F8AF00AC9A23 /* MainViewController+Facebook.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Facebook.h"; sourceTree = ""; }; - DE800B3F22A2F8AF00AC9A23 /* MainViewController+Phone.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Phone.h"; sourceTree = ""; }; - DE800B4022A2F8AF00AC9A23 /* UserTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserTableViewCell.h; sourceTree = ""; }; - DE800B4122A2F8AF00AC9A23 /* SettingsViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = SettingsViewController.xib; sourceTree = ""; }; - DE800B4222A2F8AF00AC9A23 /* MainViewController+GameCenter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+GameCenter.h"; sourceTree = ""; }; - DE800B4322A2F8AF00AC9A23 /* MainViewController+User.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+User.h"; sourceTree = ""; }; - DE800B4422A2F8AF00AC9A23 /* MainViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MainViewController.h; sourceTree = ""; }; - DE800B4522A2F8AF00AC9A23 /* AuthProviders.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AuthProviders.m; sourceTree = ""; }; - DE800B4622A2F8AF00AC9A23 /* AuthCredentialsTemplate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentialsTemplate.h; sourceTree = ""; }; - DE800B6522A2FF7300AC9A23 /* GoogleService-Info_multi.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info_multi.plist"; sourceTree = ""; }; - DE800B6622A2FF7300AC9A23 /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = ""; }; - DE800B6922A2FF8700AC9A23 /* Application.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Application.plist; sourceTree = ""; }; - DE800B6A22A2FF8700AC9A23 /* Sample.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Sample.entitlements; sourceTree = ""; }; - DE800B6C22A2FFFF00AC9A23 /* AuthCredentials.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentials.h; sourceTree = ""; }; - DE800B7122A5927C00AC9A23 /* Auth_ApiTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Auth_ApiTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - DE800B9522A5BD1800AC9A23 /* Auth_E2eTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Auth_E2eTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - DEBEF6032450EA27005E1A8F /* SwiftApiTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SwiftApiTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - DEBEF6072450EA27005E1A8F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - DEBEF60D245247A0005E1A8F /* AccountInfoTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountInfoTests.swift; sourceTree = ""; }; - DED400A3243E56F500BF6D56 /* AuthCredentials.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentials.h; sourceTree = ""; }; - DED400A4243E56F500BF6D56 /* FacebookAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FacebookAuthTests.m; sourceTree = ""; }; - DED400A5243E56F500BF6D56 /* generate_refresh_token.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = generate_refresh_token.sh; sourceTree = ""; }; - DED400A6243E56F500BF6D56 /* PhoneMultiFactorTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PhoneMultiFactorTests.swift; sourceTree = ""; }; - DED400A7243E56F500BF6D56 /* AuthCredentialsTemplate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentialsTemplate.h; sourceTree = ""; }; - DED400A8243E56F500BF6D56 /* AnonymousAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AnonymousAuthTests.m; sourceTree = ""; }; - DED400A9243E56F500BF6D56 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - DED400AA243E56F500BF6D56 /* FIRAuthApiTestsBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FIRAuthApiTestsBase.h; sourceTree = ""; }; - DED400AB243E56F500BF6D56 /* AccountInfoTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AccountInfoTests.m; sourceTree = ""; }; - DED400AC243E56F500BF6D56 /* EmailPasswordAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = EmailPasswordAuthTests.m; sourceTree = ""; }; - DED400AD243E56F500BF6D56 /* CustomAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CustomAuthTests.m; sourceTree = ""; }; - DED400AE243E56F500BF6D56 /* GoogleAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GoogleAuthTests.m; sourceTree = ""; }; - DED400AF243E56F500BF6D56 /* FIRAuthApiTestsBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthApiTestsBase.m; sourceTree = ""; }; - DED400BA243E571500BF6D56 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - DED400BB243E571500BF6D56 /* VerifyIOSClientTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = VerifyIOSClientTests.m; sourceTree = ""; }; - DED400BC243E571500BF6D56 /* BYOAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BYOAuthTests.m; sourceTree = ""; }; - DED400BD243E571500BF6D56 /* FIRAuthE2eTestsBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FIRAuthE2eTestsBase.h; sourceTree = ""; }; - DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthE2eTests.m; sourceTree = ""; }; - DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthE2eTestsBase.m; sourceTree = ""; }; - DEF68E942799B9970064CC92 /* SwiftAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftAPI.swift; sourceTree = ""; }; + 400283E823EA254A0006A298 /* MainViewController+MultiFactor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+MultiFactor.h"; sourceTree = ""; }; + 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+MultiFactor.m"; sourceTree = ""; }; + DE1865AB245B879B00F8AD70 /* TestsBase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TestsBase.swift; sourceTree = ""; }; + DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnonymousTests.swift; sourceTree = ""; }; + DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmailPasswordTests.swift; sourceTree = ""; }; + DE1865B3245C92A600F8AD70 /* GoogleTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GoogleTests.swift; sourceTree = ""; }; + DE1865B5245C95DA00F8AD70 /* Credentials.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Credentials.swift; sourceTree = ""; }; + DE1865B7245CC6FC00F8AD70 /* FacebookTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FacebookTests.swift; sourceTree = ""; }; + DE800AF422A2F87E00AC9A23 /* AuthSample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = AuthSample.app; sourceTree = BUILT_PRODUCTS_DIR; }; + DE800B0E22A2F8AF00AC9A23 /* AppManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppManager.h; sourceTree = ""; }; + DE800B0F22A2F8AF00AC9A23 /* MainViewController+AutoTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+AutoTests.h"; sourceTree = ""; }; + DE800B1022A2F8AF00AC9A23 /* MainViewController+OOB.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+OOB.h"; sourceTree = ""; }; + DE800B1122A2F8AF00AC9A23 /* MainViewController+Custom.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Custom.m"; sourceTree = ""; }; + DE800B1222A2F8AF00AC9A23 /* SettingsViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SettingsViewController.m; sourceTree = ""; }; + DE800B1322A2F8AF00AC9A23 /* MainViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MainViewController.xib; sourceTree = ""; }; + DE800B1422A2F8AF00AC9A23 /* GoogleAuthProvider.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GoogleAuthProvider.m; sourceTree = ""; }; + DE800B1522A2F8AF00AC9A23 /* UserInfoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserInfoViewController.h; sourceTree = ""; }; + DE800B1622A2F8AF00AC9A23 /* MainViewController+OAuth.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+OAuth.h"; sourceTree = ""; }; + DE800B1722A2F8AF00AC9A23 /* MainViewController+App.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+App.h"; sourceTree = ""; }; + DE800B1822A2F8AF00AC9A23 /* MainViewController+User.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+User.m"; sourceTree = ""; }; + DE800B1922A2F8AF00AC9A23 /* MainViewController+GameCenter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+GameCenter.m"; sourceTree = ""; }; + DE800B1A22A2F8AF00AC9A23 /* MainViewController+Phone.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Phone.m"; sourceTree = ""; }; + DE800B1B22A2F8AF00AC9A23 /* UserTableViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UserTableViewCell.m; sourceTree = ""; }; + DE800B1C22A2F8AF00AC9A23 /* MainViewController+Facebook.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Facebook.m"; sourceTree = ""; }; + DE800B1D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CustomTokenDataEntryViewController.h; sourceTree = ""; }; + DE800B1E22A2F8AF00AC9A23 /* FacebookAuthProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FacebookAuthProvider.h; sourceTree = ""; }; + DE800B1F22A2F8AF00AC9A23 /* ApplicationDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ApplicationDelegate.h; sourceTree = ""; }; + DE800B2022A2F8AF00AC9A23 /* UIViewController+Alerts.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIViewController+Alerts.m"; sourceTree = ""; }; + DE800B2122A2F8AF00AC9A23 /* MainViewController+Google.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Google.h"; sourceTree = ""; }; + DE800B2222A2F8AF00AC9A23 /* MainViewController+Email.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Email.m"; sourceTree = ""; }; + DE800B2322A2F8AF00AC9A23 /* MainViewController+Auth.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Auth.m"; sourceTree = ""; }; + DE800B2422A2F8AF00AC9A23 /* StaticContentTableViewManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StaticContentTableViewManager.h; sourceTree = ""; }; + DE800B2522A2F8AF00AC9A23 /* SampleTemplate.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = SampleTemplate.entitlements; sourceTree = ""; }; + DE800B2622A2F8AF00AC9A23 /* AuthProviders.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthProviders.h; sourceTree = ""; }; + DE800B2722A2F8AF00AC9A23 /* ApplicationTemplate.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = ApplicationTemplate.plist; sourceTree = ""; }; + DE800B2822A2F8AF00AC9A23 /* UserInfoViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = UserInfoViewController.xib; sourceTree = ""; }; + DE800B2922A2F8AF00AC9A23 /* MainViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MainViewController.m; sourceTree = ""; }; + DE800B2A22A2F8AF00AC9A23 /* MainViewController+Custom.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Custom.h"; sourceTree = ""; }; + DE800B2B22A2F8AF00AC9A23 /* MainViewController+AutoTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+AutoTests.m"; sourceTree = ""; }; + DE800B2C22A2F8AF00AC9A23 /* MainViewController+OOB.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+OOB.m"; sourceTree = ""; }; + DE800B2D22A2F8AF00AC9A23 /* AppManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppManager.m; sourceTree = ""; }; + DE800B2E22A2F8AF00AC9A23 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + DE800B2F22A2F8AF00AC9A23 /* MainViewController+App.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+App.m"; sourceTree = ""; }; + DE800B3022A2F8AF00AC9A23 /* MainViewController+Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Internal.h"; sourceTree = ""; }; + DE800B3122A2F8AF00AC9A23 /* MainViewController+OAuth.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+OAuth.m"; sourceTree = ""; }; + DE800B3222A2F8AF00AC9A23 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; + DE800B3322A2F8AF00AC9A23 /* GoogleAuthProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GoogleAuthProvider.h; sourceTree = ""; }; + DE800B3422A2F8AF00AC9A23 /* UserInfoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UserInfoViewController.m; sourceTree = ""; }; + DE800B3522A2F8AF00AC9A23 /* SettingsViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SettingsViewController.h; sourceTree = ""; }; + DE800B3622A2F8AF00AC9A23 /* StaticContentTableViewManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StaticContentTableViewManager.m; sourceTree = ""; }; + DE800B3722A2F8AF00AC9A23 /* MainViewController+Email.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Email.h"; sourceTree = ""; }; + DE800B3822A2F8AF00AC9A23 /* MainViewController+Auth.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Auth.h"; sourceTree = ""; }; + DE800B3922A2F8AF00AC9A23 /* MainViewController+Google.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MainViewController+Google.m"; sourceTree = ""; }; + DE800B3A22A2F8AF00AC9A23 /* UIViewController+Alerts.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIViewController+Alerts.h"; sourceTree = ""; }; + DE800B3B22A2F8AF00AC9A23 /* FacebookAuthProvider.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FacebookAuthProvider.m; sourceTree = ""; }; + DE800B3C22A2F8AF00AC9A23 /* ApplicationDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ApplicationDelegate.m; sourceTree = ""; }; + DE800B3D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CustomTokenDataEntryViewController.m; sourceTree = ""; }; + DE800B3E22A2F8AF00AC9A23 /* MainViewController+Facebook.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Facebook.h"; sourceTree = ""; }; + DE800B3F22A2F8AF00AC9A23 /* MainViewController+Phone.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+Phone.h"; sourceTree = ""; }; + DE800B4022A2F8AF00AC9A23 /* UserTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserTableViewCell.h; sourceTree = ""; }; + DE800B4122A2F8AF00AC9A23 /* SettingsViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = SettingsViewController.xib; sourceTree = ""; }; + DE800B4222A2F8AF00AC9A23 /* MainViewController+GameCenter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+GameCenter.h"; sourceTree = ""; }; + DE800B4322A2F8AF00AC9A23 /* MainViewController+User.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MainViewController+User.h"; sourceTree = ""; }; + DE800B4422A2F8AF00AC9A23 /* MainViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MainViewController.h; sourceTree = ""; }; + DE800B4522A2F8AF00AC9A23 /* AuthProviders.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AuthProviders.m; sourceTree = ""; }; + DE800B4622A2F8AF00AC9A23 /* AuthCredentialsTemplate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentialsTemplate.h; sourceTree = ""; }; + DE800B6522A2FF7300AC9A23 /* GoogleService-Info_multi.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info_multi.plist"; sourceTree = ""; }; + DE800B6622A2FF7300AC9A23 /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = ""; }; + DE800B6922A2FF8700AC9A23 /* Application.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Application.plist; sourceTree = ""; }; + DE800B6A22A2FF8700AC9A23 /* Sample.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Sample.entitlements; sourceTree = ""; }; + DE800B6C22A2FFFF00AC9A23 /* AuthCredentials.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentials.h; sourceTree = ""; }; + DE800B7122A5927C00AC9A23 /* Auth_ApiTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Auth_ApiTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + DE800B9522A5BD1800AC9A23 /* Auth_E2eTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Auth_E2eTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + DEBEF6032450EA27005E1A8F /* SwiftApiTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SwiftApiTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + DEBEF6072450EA27005E1A8F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + DEBEF60D245247A0005E1A8F /* AccountInfoTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountInfoTests.swift; sourceTree = ""; }; + DED400A3243E56F500BF6D56 /* AuthCredentials.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentials.h; sourceTree = ""; }; + DED400A4243E56F500BF6D56 /* FacebookAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FacebookAuthTests.m; sourceTree = ""; }; + DED400A5243E56F500BF6D56 /* generate_refresh_token.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = generate_refresh_token.sh; sourceTree = ""; }; + DED400A6243E56F500BF6D56 /* PhoneMultiFactorTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PhoneMultiFactorTests.swift; sourceTree = ""; }; + DED400A7243E56F500BF6D56 /* AuthCredentialsTemplate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuthCredentialsTemplate.h; sourceTree = ""; }; + DED400A8243E56F500BF6D56 /* AnonymousAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AnonymousAuthTests.m; sourceTree = ""; }; + DED400A9243E56F500BF6D56 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + DED400AA243E56F500BF6D56 /* FIRAuthApiTestsBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FIRAuthApiTestsBase.h; sourceTree = ""; }; + DED400AB243E56F500BF6D56 /* AccountInfoTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AccountInfoTests.m; sourceTree = ""; }; + DED400AC243E56F500BF6D56 /* EmailPasswordAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = EmailPasswordAuthTests.m; sourceTree = ""; }; + DED400AD243E56F500BF6D56 /* CustomAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CustomAuthTests.m; sourceTree = ""; }; + DED400AE243E56F500BF6D56 /* GoogleAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GoogleAuthTests.m; sourceTree = ""; }; + DED400AF243E56F500BF6D56 /* FIRAuthApiTestsBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthApiTestsBase.m; sourceTree = ""; }; + DED400BA243E571500BF6D56 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + DED400BB243E571500BF6D56 /* VerifyIOSClientTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = VerifyIOSClientTests.m; sourceTree = ""; }; + DED400BC243E571500BF6D56 /* BYOAuthTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BYOAuthTests.m; sourceTree = ""; }; + DED400BD243E571500BF6D56 /* FIRAuthE2eTestsBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FIRAuthE2eTestsBase.h; sourceTree = ""; }; + DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthE2eTests.m; sourceTree = ""; }; + DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FIRAuthE2eTestsBase.m; sourceTree = ""; }; + DEF68E942799B9970064CC92 /* SwiftAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftAPI.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - DE800AF122A2F87E00AC9A23 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DE800B6E22A5927C00AC9A23 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DE800B9222A5BD1800AC9A23 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DEBEF6002450EA27005E1A8F /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; + DE800AF122A2F87E00AC9A23 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE800B6E22A5927C00AC9A23 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE800B9222A5BD1800AC9A23 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DEBEF6002450EA27005E1A8F /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - DE800AEB22A2F87E00AC9A23 = { - isa = PBXGroup; - children = ( - DE800B0D22A2F8AF00AC9A23 /* Sample */, - DE800B7222A5927C00AC9A23 /* Auth_ApiTests */, - DE800B9622A5BD1800AC9A23 /* E2eTests */, - DEBEF6042450EA27005E1A8F /* SwiftApiTests */, - DE800AF522A2F87E00AC9A23 /* Products */, - ); - sourceTree = ""; - }; - DE800AF522A2F87E00AC9A23 /* Products */ = { - isa = PBXGroup; - children = ( - DE800AF422A2F87E00AC9A23 /* AuthSample.app */, - DE800B7122A5927C00AC9A23 /* Auth_ApiTests.xctest */, - DE800B9522A5BD1800AC9A23 /* Auth_E2eTests.xctest */, - DEBEF6032450EA27005E1A8F /* SwiftApiTests.xctest */, - ); - name = Products; - sourceTree = ""; - }; - DE800B0D22A2F8AF00AC9A23 /* Sample */ = { - isa = PBXGroup; - children = ( - DE800B6922A2FF8700AC9A23 /* Application.plist */, - DE800B1F22A2F8AF00AC9A23 /* ApplicationDelegate.h */, - DE800B3C22A2F8AF00AC9A23 /* ApplicationDelegate.m */, - DE800B2722A2F8AF00AC9A23 /* ApplicationTemplate.plist */, - DE800B0E22A2F8AF00AC9A23 /* AppManager.h */, - DE800B2D22A2F8AF00AC9A23 /* AppManager.m */, - DE800B6C22A2FFFF00AC9A23 /* AuthCredentials.h */, - DE800B4622A2F8AF00AC9A23 /* AuthCredentialsTemplate.h */, - DE800B2622A2F8AF00AC9A23 /* AuthProviders.h */, - DE800B4522A2F8AF00AC9A23 /* AuthProviders.m */, - DE800B1D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.h */, - DE800B3D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m */, - DE800B1E22A2F8AF00AC9A23 /* FacebookAuthProvider.h */, - DE800B3B22A2F8AF00AC9A23 /* FacebookAuthProvider.m */, - DE800B3322A2F8AF00AC9A23 /* GoogleAuthProvider.h */, - DE800B1422A2F8AF00AC9A23 /* GoogleAuthProvider.m */, - DE800B6522A2FF7300AC9A23 /* GoogleService-Info_multi.plist */, - DE800B6622A2FF7300AC9A23 /* GoogleService-Info.plist */, - DE800B3222A2F8AF00AC9A23 /* Images.xcassets */, - DE800B2E22A2F8AF00AC9A23 /* main.m */, - DE800B4422A2F8AF00AC9A23 /* MainViewController.h */, - DE800B2922A2F8AF00AC9A23 /* MainViewController.m */, - DE800B1322A2F8AF00AC9A23 /* MainViewController.xib */, - DE800B1722A2F8AF00AC9A23 /* MainViewController+App.h */, - DE800B2F22A2F8AF00AC9A23 /* MainViewController+App.m */, - DE800B3822A2F8AF00AC9A23 /* MainViewController+Auth.h */, - DE800B2322A2F8AF00AC9A23 /* MainViewController+Auth.m */, - DE800B0F22A2F8AF00AC9A23 /* MainViewController+AutoTests.h */, - DE800B2B22A2F8AF00AC9A23 /* MainViewController+AutoTests.m */, - DE800B2A22A2F8AF00AC9A23 /* MainViewController+Custom.h */, - DE800B1122A2F8AF00AC9A23 /* MainViewController+Custom.m */, - DE800B3722A2F8AF00AC9A23 /* MainViewController+Email.h */, - DE800B2222A2F8AF00AC9A23 /* MainViewController+Email.m */, - DE800B3E22A2F8AF00AC9A23 /* MainViewController+Facebook.h */, - DE800B1C22A2F8AF00AC9A23 /* MainViewController+Facebook.m */, - DE800B4222A2F8AF00AC9A23 /* MainViewController+GameCenter.h */, - DE800B1922A2F8AF00AC9A23 /* MainViewController+GameCenter.m */, - DE800B2122A2F8AF00AC9A23 /* MainViewController+Google.h */, - DE800B3922A2F8AF00AC9A23 /* MainViewController+Google.m */, - DE800B3022A2F8AF00AC9A23 /* MainViewController+Internal.h */, - 400283E823EA254A0006A298 /* MainViewController+MultiFactor.h */, - 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */, - DE800B1622A2F8AF00AC9A23 /* MainViewController+OAuth.h */, - DE800B3122A2F8AF00AC9A23 /* MainViewController+OAuth.m */, - DE800B1022A2F8AF00AC9A23 /* MainViewController+OOB.h */, - DE800B2C22A2F8AF00AC9A23 /* MainViewController+OOB.m */, - DE800B3F22A2F8AF00AC9A23 /* MainViewController+Phone.h */, - DE800B1A22A2F8AF00AC9A23 /* MainViewController+Phone.m */, - DE800B4322A2F8AF00AC9A23 /* MainViewController+User.h */, - DE800B1822A2F8AF00AC9A23 /* MainViewController+User.m */, - DE800B6A22A2FF8700AC9A23 /* Sample.entitlements */, - DE800B2522A2F8AF00AC9A23 /* SampleTemplate.entitlements */, - DE800B3522A2F8AF00AC9A23 /* SettingsViewController.h */, - DE800B1222A2F8AF00AC9A23 /* SettingsViewController.m */, - DE800B4122A2F8AF00AC9A23 /* SettingsViewController.xib */, - DE800B2422A2F8AF00AC9A23 /* StaticContentTableViewManager.h */, - DE800B3622A2F8AF00AC9A23 /* StaticContentTableViewManager.m */, - DE800B3A22A2F8AF00AC9A23 /* UIViewController+Alerts.h */, - DE800B2022A2F8AF00AC9A23 /* UIViewController+Alerts.m */, - DE800B1522A2F8AF00AC9A23 /* UserInfoViewController.h */, - DE800B3422A2F8AF00AC9A23 /* UserInfoViewController.m */, - DE800B2822A2F8AF00AC9A23 /* UserInfoViewController.xib */, - DE800B4022A2F8AF00AC9A23 /* UserTableViewCell.h */, - DE800B1B22A2F8AF00AC9A23 /* UserTableViewCell.m */, - ); - path = Sample; - sourceTree = SOURCE_ROOT; - }; - DE800B7222A5927C00AC9A23 /* Auth_ApiTests */ = { - isa = PBXGroup; - children = ( - DED400AB243E56F500BF6D56 /* AccountInfoTests.m */, - DED400A8243E56F500BF6D56 /* AnonymousAuthTests.m */, - DED400A3243E56F500BF6D56 /* AuthCredentials.h */, - DED400A7243E56F500BF6D56 /* AuthCredentialsTemplate.h */, - DED400AD243E56F500BF6D56 /* CustomAuthTests.m */, - DED400AC243E56F500BF6D56 /* EmailPasswordAuthTests.m */, - DED400A4243E56F500BF6D56 /* FacebookAuthTests.m */, - DED400AA243E56F500BF6D56 /* FIRAuthApiTestsBase.h */, - DED400AF243E56F500BF6D56 /* FIRAuthApiTestsBase.m */, - DED400A5243E56F500BF6D56 /* generate_refresh_token.sh */, - DED400AE243E56F500BF6D56 /* GoogleAuthTests.m */, - DED400A9243E56F500BF6D56 /* Info.plist */, - DED400A6243E56F500BF6D56 /* PhoneMultiFactorTests.swift */, - ); - name = Auth_ApiTests; - path = ApiTests; - sourceTree = SOURCE_ROOT; - }; - DE800B9622A5BD1800AC9A23 /* E2eTests */ = { - isa = PBXGroup; - children = ( - DED400BC243E571500BF6D56 /* BYOAuthTests.m */, - DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */, - DED400BD243E571500BF6D56 /* FIRAuthE2eTestsBase.h */, - DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */, - DED400BA243E571500BF6D56 /* Info.plist */, - DED400BB243E571500BF6D56 /* VerifyIOSClientTests.m */, - ); - path = E2eTests; - sourceTree = SOURCE_ROOT; - }; - DEBEF6042450EA27005E1A8F /* SwiftApiTests */ = { - isa = PBXGroup; - children = ( - DEBEF6072450EA27005E1A8F /* Info.plist */, - DEBEF60D245247A0005E1A8F /* AccountInfoTests.swift */, - DE1865AB245B879B00F8AD70 /* TestsBase.swift */, - DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */, - DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */, - DE1865B3245C92A600F8AD70 /* GoogleTests.swift */, - DE1865B5245C95DA00F8AD70 /* Credentials.swift */, - DE1865B7245CC6FC00F8AD70 /* FacebookTests.swift */, - DEF68E942799B9970064CC92 /* SwiftAPI.swift */, - ); - path = SwiftApiTests; - sourceTree = ""; - }; + DE800AEB22A2F87E00AC9A23 = { + isa = PBXGroup; + children = ( + DE800B0D22A2F8AF00AC9A23 /* Sample */, + DE800B7222A5927C00AC9A23 /* Auth_ApiTests */, + DE800B9622A5BD1800AC9A23 /* E2eTests */, + DEBEF6042450EA27005E1A8F /* SwiftApiTests */, + DE800AF522A2F87E00AC9A23 /* Products */, + ); + sourceTree = ""; + }; + DE800AF522A2F87E00AC9A23 /* Products */ = { + isa = PBXGroup; + children = ( + DE800AF422A2F87E00AC9A23 /* AuthSample.app */, + DE800B7122A5927C00AC9A23 /* Auth_ApiTests.xctest */, + DE800B9522A5BD1800AC9A23 /* Auth_E2eTests.xctest */, + DEBEF6032450EA27005E1A8F /* SwiftApiTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + DE800B0D22A2F8AF00AC9A23 /* Sample */ = { + isa = PBXGroup; + children = ( + DE800B6922A2FF8700AC9A23 /* Application.plist */, + DE800B1F22A2F8AF00AC9A23 /* ApplicationDelegate.h */, + DE800B3C22A2F8AF00AC9A23 /* ApplicationDelegate.m */, + DE800B2722A2F8AF00AC9A23 /* ApplicationTemplate.plist */, + DE800B0E22A2F8AF00AC9A23 /* AppManager.h */, + DE800B2D22A2F8AF00AC9A23 /* AppManager.m */, + DE800B6C22A2FFFF00AC9A23 /* AuthCredentials.h */, + DE800B4622A2F8AF00AC9A23 /* AuthCredentialsTemplate.h */, + DE800B2622A2F8AF00AC9A23 /* AuthProviders.h */, + DE800B4522A2F8AF00AC9A23 /* AuthProviders.m */, + DE800B1D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.h */, + DE800B3D22A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m */, + DE800B1E22A2F8AF00AC9A23 /* FacebookAuthProvider.h */, + DE800B3B22A2F8AF00AC9A23 /* FacebookAuthProvider.m */, + DE800B3322A2F8AF00AC9A23 /* GoogleAuthProvider.h */, + DE800B1422A2F8AF00AC9A23 /* GoogleAuthProvider.m */, + DE800B6522A2FF7300AC9A23 /* GoogleService-Info_multi.plist */, + DE800B6622A2FF7300AC9A23 /* GoogleService-Info.plist */, + DE800B3222A2F8AF00AC9A23 /* Images.xcassets */, + DE800B2E22A2F8AF00AC9A23 /* main.m */, + DE800B4422A2F8AF00AC9A23 /* MainViewController.h */, + DE800B2922A2F8AF00AC9A23 /* MainViewController.m */, + DE800B1322A2F8AF00AC9A23 /* MainViewController.xib */, + DE800B1722A2F8AF00AC9A23 /* MainViewController+App.h */, + DE800B2F22A2F8AF00AC9A23 /* MainViewController+App.m */, + DE800B3822A2F8AF00AC9A23 /* MainViewController+Auth.h */, + DE800B2322A2F8AF00AC9A23 /* MainViewController+Auth.m */, + DE800B0F22A2F8AF00AC9A23 /* MainViewController+AutoTests.h */, + DE800B2B22A2F8AF00AC9A23 /* MainViewController+AutoTests.m */, + DE800B2A22A2F8AF00AC9A23 /* MainViewController+Custom.h */, + DE800B1122A2F8AF00AC9A23 /* MainViewController+Custom.m */, + DE800B3722A2F8AF00AC9A23 /* MainViewController+Email.h */, + DE800B2222A2F8AF00AC9A23 /* MainViewController+Email.m */, + DE800B3E22A2F8AF00AC9A23 /* MainViewController+Facebook.h */, + DE800B1C22A2F8AF00AC9A23 /* MainViewController+Facebook.m */, + DE800B4222A2F8AF00AC9A23 /* MainViewController+GameCenter.h */, + DE800B1922A2F8AF00AC9A23 /* MainViewController+GameCenter.m */, + DE800B2122A2F8AF00AC9A23 /* MainViewController+Google.h */, + DE800B3922A2F8AF00AC9A23 /* MainViewController+Google.m */, + DE800B3022A2F8AF00AC9A23 /* MainViewController+Internal.h */, + 400283E823EA254A0006A298 /* MainViewController+MultiFactor.h */, + 400283E923EA254A0006A298 /* MainViewController+MultiFactor.m */, + DE800B1622A2F8AF00AC9A23 /* MainViewController+OAuth.h */, + DE800B3122A2F8AF00AC9A23 /* MainViewController+OAuth.m */, + DE800B1022A2F8AF00AC9A23 /* MainViewController+OOB.h */, + DE800B2C22A2F8AF00AC9A23 /* MainViewController+OOB.m */, + DE800B3F22A2F8AF00AC9A23 /* MainViewController+Phone.h */, + DE800B1A22A2F8AF00AC9A23 /* MainViewController+Phone.m */, + DE800B4322A2F8AF00AC9A23 /* MainViewController+User.h */, + DE800B1822A2F8AF00AC9A23 /* MainViewController+User.m */, + DE800B6A22A2FF8700AC9A23 /* Sample.entitlements */, + DE800B2522A2F8AF00AC9A23 /* SampleTemplate.entitlements */, + DE800B3522A2F8AF00AC9A23 /* SettingsViewController.h */, + DE800B1222A2F8AF00AC9A23 /* SettingsViewController.m */, + DE800B4122A2F8AF00AC9A23 /* SettingsViewController.xib */, + DE800B2422A2F8AF00AC9A23 /* StaticContentTableViewManager.h */, + DE800B3622A2F8AF00AC9A23 /* StaticContentTableViewManager.m */, + DE800B3A22A2F8AF00AC9A23 /* UIViewController+Alerts.h */, + DE800B2022A2F8AF00AC9A23 /* UIViewController+Alerts.m */, + DE800B1522A2F8AF00AC9A23 /* UserInfoViewController.h */, + DE800B3422A2F8AF00AC9A23 /* UserInfoViewController.m */, + DE800B2822A2F8AF00AC9A23 /* UserInfoViewController.xib */, + DE800B4022A2F8AF00AC9A23 /* UserTableViewCell.h */, + DE800B1B22A2F8AF00AC9A23 /* UserTableViewCell.m */, + ); + path = Sample; + sourceTree = SOURCE_ROOT; + }; + DE800B7222A5927C00AC9A23 /* Auth_ApiTests */ = { + isa = PBXGroup; + children = ( + DED400AB243E56F500BF6D56 /* AccountInfoTests.m */, + DED400A8243E56F500BF6D56 /* AnonymousAuthTests.m */, + DED400A3243E56F500BF6D56 /* AuthCredentials.h */, + DED400A7243E56F500BF6D56 /* AuthCredentialsTemplate.h */, + DED400AD243E56F500BF6D56 /* CustomAuthTests.m */, + DED400AC243E56F500BF6D56 /* EmailPasswordAuthTests.m */, + DED400A4243E56F500BF6D56 /* FacebookAuthTests.m */, + DED400AA243E56F500BF6D56 /* FIRAuthApiTestsBase.h */, + DED400AF243E56F500BF6D56 /* FIRAuthApiTestsBase.m */, + DED400A5243E56F500BF6D56 /* generate_refresh_token.sh */, + DED400AE243E56F500BF6D56 /* GoogleAuthTests.m */, + DED400A9243E56F500BF6D56 /* Info.plist */, + DED400A6243E56F500BF6D56 /* PhoneMultiFactorTests.swift */, + ); + name = Auth_ApiTests; + path = ApiTests; + sourceTree = SOURCE_ROOT; + }; + DE800B9622A5BD1800AC9A23 /* E2eTests */ = { + isa = PBXGroup; + children = ( + DED400BC243E571500BF6D56 /* BYOAuthTests.m */, + DED400BE243E571500BF6D56 /* FIRAuthE2eTests.m */, + DED400BD243E571500BF6D56 /* FIRAuthE2eTestsBase.h */, + DED400BF243E571500BF6D56 /* FIRAuthE2eTestsBase.m */, + DED400BA243E571500BF6D56 /* Info.plist */, + DED400BB243E571500BF6D56 /* VerifyIOSClientTests.m */, + ); + path = E2eTests; + sourceTree = SOURCE_ROOT; + }; + DEBEF6042450EA27005E1A8F /* SwiftApiTests */ = { + isa = PBXGroup; + children = ( + DEBEF6072450EA27005E1A8F /* Info.plist */, + DEBEF60D245247A0005E1A8F /* AccountInfoTests.swift */, + DE1865AB245B879B00F8AD70 /* TestsBase.swift */, + DE1865AD245B8A1400F8AD70 /* AnonymousTests.swift */, + DE1865B1245C7A2B00F8AD70 /* EmailPasswordTests.swift */, + DE1865B3245C92A600F8AD70 /* GoogleTests.swift */, + DE1865B5245C95DA00F8AD70 /* Credentials.swift */, + DE1865B7245CC6FC00F8AD70 /* FacebookTests.swift */, + DEF68E942799B9970064CC92 /* SwiftAPI.swift */, + ); + path = SwiftApiTests; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ - DE800AF322A2F87E00AC9A23 /* AuthSample */ = { - isa = PBXNativeTarget; - buildConfigurationList = DE800B0A22A2F88000AC9A23 /* Build configuration list for PBXNativeTarget "AuthSample" */; - buildPhases = ( - DE800AF022A2F87E00AC9A23 /* Sources */, - DE800AF122A2F87E00AC9A23 /* Frameworks */, - DE800AF222A2F87E00AC9A23 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = AuthSample; - productName = AuthSample; - productReference = DE800AF422A2F87E00AC9A23 /* AuthSample.app */; - productType = "com.apple.product-type.application"; - }; - DE800B7022A5927C00AC9A23 /* Auth_ApiTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = DE800B7A22A5927C00AC9A23 /* Build configuration list for PBXNativeTarget "Auth_ApiTests" */; - buildPhases = ( - DE800B6D22A5927C00AC9A23 /* Sources */, - DE800B6E22A5927C00AC9A23 /* Frameworks */, - DE800B6F22A5927C00AC9A23 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - DE800B7722A5927C00AC9A23 /* PBXTargetDependency */, - ); - name = Auth_ApiTests; - productName = Auth_ApiTests; - productReference = DE800B7122A5927C00AC9A23 /* Auth_ApiTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - DE800B9422A5BD1800AC9A23 /* Auth_E2eTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = DE800B9C22A5BD1800AC9A23 /* Build configuration list for PBXNativeTarget "Auth_E2eTests" */; - buildPhases = ( - DE800B9122A5BD1800AC9A23 /* Sources */, - DE800B9222A5BD1800AC9A23 /* Frameworks */, - DE800B9322A5BD1800AC9A23 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - DE800B9B22A5BD1800AC9A23 /* PBXTargetDependency */, - ); - name = Auth_E2eTests; - productName = Auth_E2eTests; - productReference = DE800B9522A5BD1800AC9A23 /* Auth_E2eTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - DEBEF6022450EA27005E1A8F /* SwiftApiTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = DEBEF60A2450EA27005E1A8F /* Build configuration list for PBXNativeTarget "SwiftApiTests" */; - buildPhases = ( - DEBEF5FF2450EA27005E1A8F /* Sources */, - DEBEF6002450EA27005E1A8F /* Frameworks */, - DEBEF6012450EA27005E1A8F /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - DEBEF6092450EA27005E1A8F /* PBXTargetDependency */, - ); - name = SwiftApiTests; - productName = SwiftApiTests; - productReference = DEBEF6032450EA27005E1A8F /* SwiftApiTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; + DE800AF322A2F87E00AC9A23 /* AuthSample */ = { + isa = PBXNativeTarget; + buildConfigurationList = DE800B0A22A2F88000AC9A23 /* Build configuration list for PBXNativeTarget "AuthSample" */; + buildPhases = ( + DE800AF022A2F87E00AC9A23 /* Sources */, + DE800AF122A2F87E00AC9A23 /* Frameworks */, + DE800AF222A2F87E00AC9A23 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = AuthSample; + productName = AuthSample; + productReference = DE800AF422A2F87E00AC9A23 /* AuthSample.app */; + productType = "com.apple.product-type.application"; + }; + DE800B7022A5927C00AC9A23 /* Auth_ApiTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = DE800B7A22A5927C00AC9A23 /* Build configuration list for PBXNativeTarget "Auth_ApiTests" */; + buildPhases = ( + DE800B6D22A5927C00AC9A23 /* Sources */, + DE800B6E22A5927C00AC9A23 /* Frameworks */, + DE800B6F22A5927C00AC9A23 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + DE800B7722A5927C00AC9A23 /* PBXTargetDependency */, + ); + name = Auth_ApiTests; + productName = Auth_ApiTests; + productReference = DE800B7122A5927C00AC9A23 /* Auth_ApiTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + DE800B9422A5BD1800AC9A23 /* Auth_E2eTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = DE800B9C22A5BD1800AC9A23 /* Build configuration list for PBXNativeTarget "Auth_E2eTests" */; + buildPhases = ( + DE800B9122A5BD1800AC9A23 /* Sources */, + DE800B9222A5BD1800AC9A23 /* Frameworks */, + DE800B9322A5BD1800AC9A23 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + DE800B9B22A5BD1800AC9A23 /* PBXTargetDependency */, + ); + name = Auth_E2eTests; + productName = Auth_E2eTests; + productReference = DE800B9522A5BD1800AC9A23 /* Auth_E2eTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + DEBEF6022450EA27005E1A8F /* SwiftApiTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = DEBEF60A2450EA27005E1A8F /* Build configuration list for PBXNativeTarget "SwiftApiTests" */; + buildPhases = ( + DEBEF5FF2450EA27005E1A8F /* Sources */, + DEBEF6002450EA27005E1A8F /* Frameworks */, + DEBEF6012450EA27005E1A8F /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + DEBEF6092450EA27005E1A8F /* PBXTargetDependency */, + ); + name = SwiftApiTests; + productName = SwiftApiTests; + productReference = DEBEF6032450EA27005E1A8F /* SwiftApiTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ - DE800AEC22A2F87E00AC9A23 /* Project object */ = { - isa = PBXProject; - attributes = { - LastSwiftUpdateCheck = 1140; - LastUpgradeCheck = 1020; - ORGANIZATIONNAME = Firebase; - TargetAttributes = { - DE800AF322A2F87E00AC9A23 = { - CreatedOnToolsVersion = 10.2; - LastSwiftMigration = 1140; - }; - DE800B7022A5927C00AC9A23 = { - CreatedOnToolsVersion = 10.2; - LastSwiftMigration = 1020; - TestTargetID = DE800AF322A2F87E00AC9A23; - }; - DE800B9422A5BD1800AC9A23 = { - CreatedOnToolsVersion = 10.2; - TestTargetID = DE800AF322A2F87E00AC9A23; - }; - DEBEF6022450EA27005E1A8F = { - CreatedOnToolsVersion = 11.4.1; - TestTargetID = DE800AF322A2F87E00AC9A23; - }; - }; - }; - buildConfigurationList = DE800AEF22A2F87E00AC9A23 /* Build configuration list for PBXProject "AuthSample" */; - compatibilityVersion = "Xcode 9.3"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = DE800AEB22A2F87E00AC9A23; - productRefGroup = DE800AF522A2F87E00AC9A23 /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - DE800AF322A2F87E00AC9A23 /* AuthSample */, - DE800B7022A5927C00AC9A23 /* Auth_ApiTests */, - DE800B9422A5BD1800AC9A23 /* Auth_E2eTests */, - DEBEF6022450EA27005E1A8F /* SwiftApiTests */, - ); - }; + DE800AEC22A2F87E00AC9A23 /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 1140; + LastUpgradeCheck = 1020; + ORGANIZATIONNAME = Firebase; + TargetAttributes = { + DE800AF322A2F87E00AC9A23 = { + CreatedOnToolsVersion = 10.2; + LastSwiftMigration = 1140; + }; + DE800B7022A5927C00AC9A23 = { + CreatedOnToolsVersion = 10.2; + LastSwiftMigration = 1020; + TestTargetID = DE800AF322A2F87E00AC9A23; + }; + DE800B9422A5BD1800AC9A23 = { + CreatedOnToolsVersion = 10.2; + TestTargetID = DE800AF322A2F87E00AC9A23; + }; + DEBEF6022450EA27005E1A8F = { + CreatedOnToolsVersion = 11.4.1; + TestTargetID = DE800AF322A2F87E00AC9A23; + }; + }; + }; + buildConfigurationList = DE800AEF22A2F87E00AC9A23 /* Build configuration list for PBXProject "AuthSample" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = DE800AEB22A2F87E00AC9A23; + productRefGroup = DE800AF522A2F87E00AC9A23 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + DE800AF322A2F87E00AC9A23 /* AuthSample */, + DE800B7022A5927C00AC9A23 /* Auth_ApiTests */, + DE800B9422A5BD1800AC9A23 /* Auth_E2eTests */, + DEBEF6022450EA27005E1A8F /* SwiftApiTests */, + ); + }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ - DE800AF222A2F87E00AC9A23 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DE800B5422A2F8AF00AC9A23 /* UserInfoViewController.xib in Resources */, - DE800B5C22A2F8AF00AC9A23 /* Images.xcassets in Resources */, - DE800B4922A2F8AF00AC9A23 /* MainViewController.xib in Resources */, - DE800B6722A2FF7300AC9A23 /* GoogleService-Info_multi.plist in Resources */, - DE800B6322A2F8AF00AC9A23 /* SettingsViewController.xib in Resources */, - DE800B6822A2FF7300AC9A23 /* GoogleService-Info.plist in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DE800B6F22A5927C00AC9A23 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DED400B1243E56F500BF6D56 /* generate_refresh_token.sh in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DE800B9322A5BD1800AC9A23 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DEBEF6012450EA27005E1A8F /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; + DE800AF222A2F87E00AC9A23 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DE800B5422A2F8AF00AC9A23 /* UserInfoViewController.xib in Resources */, + DE800B5C22A2F8AF00AC9A23 /* Images.xcassets in Resources */, + DE800B4922A2F8AF00AC9A23 /* MainViewController.xib in Resources */, + DE800B6722A2FF7300AC9A23 /* GoogleService-Info_multi.plist in Resources */, + DE800B6322A2F8AF00AC9A23 /* SettingsViewController.xib in Resources */, + DE800B6822A2FF7300AC9A23 /* GoogleService-Info.plist in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE800B6F22A5927C00AC9A23 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DED400B1243E56F500BF6D56 /* generate_refresh_token.sh in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE800B9322A5BD1800AC9A23 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DEBEF6012450EA27005E1A8F /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ - DE800AF022A2F87E00AC9A23 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DE800B5722A2F8AF00AC9A23 /* MainViewController+OOB.m in Sources */, - DE800B4E22A2F8AF00AC9A23 /* UserTableViewCell.m in Sources */, - DE800B6422A2F8AF00AC9A23 /* AuthProviders.m in Sources */, - DE800B4F22A2F8AF00AC9A23 /* MainViewController+Facebook.m in Sources */, - DE800B4D22A2F8AF00AC9A23 /* MainViewController+Phone.m in Sources */, - DE800B4722A2F8AF00AC9A23 /* MainViewController+Custom.m in Sources */, - 400283EA23EA254B0006A298 /* MainViewController+MultiFactor.m in Sources */, - DE800B5A22A2F8AF00AC9A23 /* MainViewController+App.m in Sources */, - DE800B6222A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m in Sources */, - DE800B6122A2F8AF00AC9A23 /* ApplicationDelegate.m in Sources */, - DE800B4A22A2F8AF00AC9A23 /* GoogleAuthProvider.m in Sources */, - DE800B5B22A2F8AF00AC9A23 /* MainViewController+OAuth.m in Sources */, - DE800B6022A2F8AF00AC9A23 /* FacebookAuthProvider.m in Sources */, - DE800B5922A2F8AF00AC9A23 /* main.m in Sources */, - DE800B5222A2F8AF00AC9A23 /* MainViewController+Auth.m in Sources */, - DE800B5F22A2F8AF00AC9A23 /* MainViewController+Google.m in Sources */, - DE800B5D22A2F8AF00AC9A23 /* UserInfoViewController.m in Sources */, - DE800B4B22A2F8AF00AC9A23 /* MainViewController+User.m in Sources */, - DE800B5522A2F8AF00AC9A23 /* MainViewController.m in Sources */, - DE800B5122A2F8AF00AC9A23 /* MainViewController+Email.m in Sources */, - DE800B5022A2F8AF00AC9A23 /* UIViewController+Alerts.m in Sources */, - DE800B5E22A2F8AF00AC9A23 /* StaticContentTableViewManager.m in Sources */, - DE800B4C22A2F8AF00AC9A23 /* MainViewController+GameCenter.m in Sources */, - DE800B4822A2F8AF00AC9A23 /* SettingsViewController.m in Sources */, - DE800B5622A2F8AF00AC9A23 /* MainViewController+AutoTests.m in Sources */, - DE800B5822A2F8AF00AC9A23 /* AppManager.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DE800B6D22A5927C00AC9A23 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DED400B0243E56F500BF6D56 /* FacebookAuthTests.m in Sources */, - DED400B5243E56F500BF6D56 /* AccountInfoTests.m in Sources */, - DED400B6243E56F500BF6D56 /* EmailPasswordAuthTests.m in Sources */, - DED400B9243E56F500BF6D56 /* FIRAuthApiTestsBase.m in Sources */, - DED400B3243E56F500BF6D56 /* AnonymousAuthTests.m in Sources */, - DED400B7243E56F500BF6D56 /* CustomAuthTests.m in Sources */, - DED400B8243E56F500BF6D56 /* GoogleAuthTests.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DE800B9122A5BD1800AC9A23 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DED400C2243E571500BF6D56 /* BYOAuthTests.m in Sources */, - DED400C4243E571500BF6D56 /* FIRAuthE2eTestsBase.m in Sources */, - DED400C1243E571500BF6D56 /* VerifyIOSClientTests.m in Sources */, - DED400C3243E571500BF6D56 /* FIRAuthE2eTests.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - DEBEF5FF2450EA27005E1A8F /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DEF68E952799B9970064CC92 /* SwiftAPI.swift in Sources */, - DE1865B4245C92A600F8AD70 /* GoogleTests.swift in Sources */, - DE1865AE245B8A1400F8AD70 /* AnonymousTests.swift in Sources */, - DE1865B8245CC6FC00F8AD70 /* FacebookTests.swift in Sources */, - DE1865B6245C95DA00F8AD70 /* Credentials.swift in Sources */, - DE1865B2245C7A2B00F8AD70 /* EmailPasswordTests.swift in Sources */, - DE1865AC245B879B00F8AD70 /* TestsBase.swift in Sources */, - DEBEF60E245247A0005E1A8F /* AccountInfoTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; + DE800AF022A2F87E00AC9A23 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DE800B5722A2F8AF00AC9A23 /* MainViewController+OOB.m in Sources */, + DE800B4E22A2F8AF00AC9A23 /* UserTableViewCell.m in Sources */, + DE800B6422A2F8AF00AC9A23 /* AuthProviders.m in Sources */, + DE800B4F22A2F8AF00AC9A23 /* MainViewController+Facebook.m in Sources */, + DE800B4D22A2F8AF00AC9A23 /* MainViewController+Phone.m in Sources */, + DE800B4722A2F8AF00AC9A23 /* MainViewController+Custom.m in Sources */, + 400283EA23EA254B0006A298 /* MainViewController+MultiFactor.m in Sources */, + DE800B5A22A2F8AF00AC9A23 /* MainViewController+App.m in Sources */, + DE800B6222A2F8AF00AC9A23 /* CustomTokenDataEntryViewController.m in Sources */, + DE800B6122A2F8AF00AC9A23 /* ApplicationDelegate.m in Sources */, + DE800B4A22A2F8AF00AC9A23 /* GoogleAuthProvider.m in Sources */, + DE800B5B22A2F8AF00AC9A23 /* MainViewController+OAuth.m in Sources */, + DE800B6022A2F8AF00AC9A23 /* FacebookAuthProvider.m in Sources */, + DE800B5922A2F8AF00AC9A23 /* main.m in Sources */, + DE800B5222A2F8AF00AC9A23 /* MainViewController+Auth.m in Sources */, + DE800B5F22A2F8AF00AC9A23 /* MainViewController+Google.m in Sources */, + DE800B5D22A2F8AF00AC9A23 /* UserInfoViewController.m in Sources */, + DE800B4B22A2F8AF00AC9A23 /* MainViewController+User.m in Sources */, + DE800B5522A2F8AF00AC9A23 /* MainViewController.m in Sources */, + DE800B5122A2F8AF00AC9A23 /* MainViewController+Email.m in Sources */, + DE800B5022A2F8AF00AC9A23 /* UIViewController+Alerts.m in Sources */, + DE800B5E22A2F8AF00AC9A23 /* StaticContentTableViewManager.m in Sources */, + DE800B4C22A2F8AF00AC9A23 /* MainViewController+GameCenter.m in Sources */, + DE800B4822A2F8AF00AC9A23 /* SettingsViewController.m in Sources */, + DE800B5622A2F8AF00AC9A23 /* MainViewController+AutoTests.m in Sources */, + DE800B5822A2F8AF00AC9A23 /* AppManager.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE800B6D22A5927C00AC9A23 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DED400B0243E56F500BF6D56 /* FacebookAuthTests.m in Sources */, + DED400B5243E56F500BF6D56 /* AccountInfoTests.m in Sources */, + DED400B6243E56F500BF6D56 /* EmailPasswordAuthTests.m in Sources */, + DED400B9243E56F500BF6D56 /* FIRAuthApiTestsBase.m in Sources */, + DED400B3243E56F500BF6D56 /* AnonymousAuthTests.m in Sources */, + DED400B7243E56F500BF6D56 /* CustomAuthTests.m in Sources */, + DED400B8243E56F500BF6D56 /* GoogleAuthTests.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DE800B9122A5BD1800AC9A23 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DED400C2243E571500BF6D56 /* BYOAuthTests.m in Sources */, + DED400C4243E571500BF6D56 /* FIRAuthE2eTestsBase.m in Sources */, + DED400C1243E571500BF6D56 /* VerifyIOSClientTests.m in Sources */, + DED400C3243E571500BF6D56 /* FIRAuthE2eTests.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DEBEF5FF2450EA27005E1A8F /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + DEF68E952799B9970064CC92 /* SwiftAPI.swift in Sources */, + DE1865B4245C92A600F8AD70 /* GoogleTests.swift in Sources */, + DE1865AE245B8A1400F8AD70 /* AnonymousTests.swift in Sources */, + DE1865B8245CC6FC00F8AD70 /* FacebookTests.swift in Sources */, + DE1865B6245C95DA00F8AD70 /* Credentials.swift in Sources */, + DE1865B2245C7A2B00F8AD70 /* EmailPasswordTests.swift in Sources */, + DE1865AC245B879B00F8AD70 /* TestsBase.swift in Sources */, + DEBEF60E245247A0005E1A8F /* AccountInfoTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - DE800B7722A5927C00AC9A23 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = DE800AF322A2F87E00AC9A23 /* AuthSample */; - targetProxy = DE800B7622A5927C00AC9A23 /* PBXContainerItemProxy */; - }; - DE800B9B22A5BD1800AC9A23 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = DE800AF322A2F87E00AC9A23 /* AuthSample */; - targetProxy = DE800B9A22A5BD1800AC9A23 /* PBXContainerItemProxy */; - }; - DEBEF6092450EA27005E1A8F /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = DE800AF322A2F87E00AC9A23 /* AuthSample */; - targetProxy = DEBEF6082450EA27005E1A8F /* PBXContainerItemProxy */; - }; + DE800B7722A5927C00AC9A23 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = DE800AF322A2F87E00AC9A23 /* AuthSample */; + targetProxy = DE800B7622A5927C00AC9A23 /* PBXContainerItemProxy */; + }; + DE800B9B22A5BD1800AC9A23 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = DE800AF322A2F87E00AC9A23 /* AuthSample */; + targetProxy = DE800B9A22A5BD1800AC9A23 /* PBXContainerItemProxy */; + }; + DEBEF6092450EA27005E1A8F /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = DE800AF322A2F87E00AC9A23 /* AuthSample */; + targetProxy = DEBEF6082450EA27005E1A8F /* PBXContainerItemProxy */; + }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ - DE800B0822A2F88000AC9A23 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.1; - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - }; - name = Debug; - }; - DE800B0922A2F88000AC9A23 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.1; - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - SDKROOT = iphoneos; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - DE800B0B22A2F88000AC9A23 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Sample/Sample.entitlements; - CODE_SIGN_STYLE = Automatic; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "${SRCROOT}/../../..", - ); - INFOPLIST_FILE = Sample/Application.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.google.FirebaseExperimental1; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - DE800B0C22A2F88000AC9A23 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Sample/Sample.entitlements; - CODE_SIGN_STYLE = Automatic; - HEADER_SEARCH_PATHS = ( - "$(inherited)", - "${SRCROOT}/../../..", - ); - INFOPLIST_FILE = Sample/Application.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.google.FirebaseExperimental1; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Release; - }; - DE800B7822A5927C00AC9A23 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = ApiTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-ApiTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "../ApiTests/Auth_ApiTests-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; - }; - name = Debug; - }; - DE800B7922A5927C00AC9A23 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = ApiTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-ApiTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "../ApiTests/Auth_ApiTests-Bridging-Header.h"; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; - }; - name = Release; - }; - DE800B9D22A5BD1800AC9A23 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = E2eTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-E2eTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; - }; - name = Debug; - }; - DE800B9E22A5BD1800AC9A23 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = E2eTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-E2eTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; - }; - name = Release; - }; - DEBEF60B2450EA27005E1A8F /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = SwiftApiTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.1; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.google.firebase.SwiftApiTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; - }; - name = Debug; - }; - DEBEF60C2450EA27005E1A8F /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - CODE_SIGN_STYLE = Automatic; - INFOPLIST_FILE = SwiftApiTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.1; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.google.firebase.SwiftApiTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; - }; - name = Release; - }; + DE800B0822A2F88000AC9A23 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.1; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + }; + name = Debug; + }; + DE800B0922A2F88000AC9A23 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.1; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = iphoneos; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + DE800B0B22A2F88000AC9A23 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Sample/Sample.entitlements; + CODE_SIGN_STYLE = Automatic; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "${SRCROOT}/../../..", + ); + INFOPLIST_FILE = Sample/Application.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.google.FirebaseExperimental1; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + DE800B0C22A2F88000AC9A23 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Sample/Sample.entitlements; + CODE_SIGN_STYLE = Automatic; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "${SRCROOT}/../../..", + ); + INFOPLIST_FILE = Sample/Application.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.google.FirebaseExperimental1; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; + DE800B7822A5927C00AC9A23 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = ApiTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-ApiTests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "../ApiTests/Auth_ApiTests-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; + }; + name = Debug; + }; + DE800B7922A5927C00AC9A23 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = ApiTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-ApiTests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "../ApiTests/Auth_ApiTests-Bridging-Header.h"; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; + }; + name = Release; + }; + DE800B9D22A5BD1800AC9A23 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = E2eTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-E2eTests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; + }; + name = Debug; + }; + DE800B9E22A5BD1800AC9A23 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = E2eTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = "com.google.firebase.auth.Auth-E2eTests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; + }; + name = Release; + }; + DEBEF60B2450EA27005E1A8F /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = SwiftApiTests/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.1; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.google.firebase.SwiftApiTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; + }; + name = Debug; + }; + DEBEF60C2450EA27005E1A8F /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + INFOPLIST_FILE = SwiftApiTests/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.1; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.google.firebase.SwiftApiTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AuthSample.app/AuthSample"; + }; + name = Release; + }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - DE800AEF22A2F87E00AC9A23 /* Build configuration list for PBXProject "AuthSample" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - DE800B0822A2F88000AC9A23 /* Debug */, - DE800B0922A2F88000AC9A23 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - DE800B0A22A2F88000AC9A23 /* Build configuration list for PBXNativeTarget "AuthSample" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - DE800B0B22A2F88000AC9A23 /* Debug */, - DE800B0C22A2F88000AC9A23 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - DE800B7A22A5927C00AC9A23 /* Build configuration list for PBXNativeTarget "Auth_ApiTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - DE800B7822A5927C00AC9A23 /* Debug */, - DE800B7922A5927C00AC9A23 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - DE800B9C22A5BD1800AC9A23 /* Build configuration list for PBXNativeTarget "Auth_E2eTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - DE800B9D22A5BD1800AC9A23 /* Debug */, - DE800B9E22A5BD1800AC9A23 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - DEBEF60A2450EA27005E1A8F /* Build configuration list for PBXNativeTarget "SwiftApiTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - DEBEF60B2450EA27005E1A8F /* Debug */, - DEBEF60C2450EA27005E1A8F /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; + DE800AEF22A2F87E00AC9A23 /* Build configuration list for PBXProject "AuthSample" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + DE800B0822A2F88000AC9A23 /* Debug */, + DE800B0922A2F88000AC9A23 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + DE800B0A22A2F88000AC9A23 /* Build configuration list for PBXNativeTarget "AuthSample" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + DE800B0B22A2F88000AC9A23 /* Debug */, + DE800B0C22A2F88000AC9A23 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + DE800B7A22A5927C00AC9A23 /* Build configuration list for PBXNativeTarget "Auth_ApiTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + DE800B7822A5927C00AC9A23 /* Debug */, + DE800B7922A5927C00AC9A23 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + DE800B9C22A5BD1800AC9A23 /* Build configuration list for PBXNativeTarget "Auth_E2eTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + DE800B9D22A5BD1800AC9A23 /* Debug */, + DE800B9E22A5BD1800AC9A23 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + DEBEF60A2450EA27005E1A8F /* Build configuration list for PBXNativeTarget "SwiftApiTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + DEBEF60B2450EA27005E1A8F /* Debug */, + DEBEF60C2450EA27005E1A8F /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; /* End XCConfigurationList section */ - }; - rootObject = DE800AEC22A2F87E00AC9A23 /* Project object */; + }; + rootObject = DE800AEC22A2F87E00AC9A23 /* Project object */; } diff --git a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_ApiTests.xcscheme b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_ApiTests.xcscheme index 816b94e83f9..0579a0247ed 100644 --- a/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_ApiTests.xcscheme +++ b/FirebaseAuth/Tests/Sample/AuthSample.xcodeproj/xcshareddata/xcschemes/Auth_ApiTests.xcscheme @@ -83,4 +83,4 @@ buildConfiguration = "Release" revealArchiveInOrganizer = "YES"> - \ No newline at end of file + From 9e4c88e1dd041af40b33020a567bb66f2fa6546b Mon Sep 17 00:00:00 2001 From: Yvonne Cheng Date: Tue, 9 Aug 2022 11:36:16 -0700 Subject: [PATCH 11/23] Delete Application.plist file --- FirebaseAuth/Tests/Sample/Application.plist | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 FirebaseAuth/Tests/Sample/Application.plist diff --git a/FirebaseAuth/Tests/Sample/Application.plist b/FirebaseAuth/Tests/Sample/Application.plist deleted file mode 100644 index e69de29bb2d..00000000000 From 66f2db75cb1cc2062a0ae6c09cd0d23e19b13436 Mon Sep 17 00:00:00 2001 From: Yvonne Cheng Date: Tue, 9 Aug 2022 14:26:59 -0700 Subject: [PATCH 12/23] Clean extra methods in FIROAuthCredentialInternal and related files to add displayname --- .../AuthProvider/OAuth/FIROAuthCredential.m | 22 +++++-------------- .../OAuth/FIROAuthCredential_Internal.h | 8 +------ .../AuthProvider/OAuth/FIROAuthProvider.m | 4 ++++ 3 files changed, 10 insertions(+), 24 deletions(-) diff --git a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m index abddd59084a..2496057a51f 100644 --- a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m +++ b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m @@ -40,23 +40,6 @@ - (nullable instancetype)initWithProvider:(NSString *)provider { return nil; } -- (instancetype)initWithProviderID:(NSString *)providerID - IDToken:(nullable NSString *)IDToken - rawNonce:(nullable NSString *)rawNonce - accessToken:(nullable NSString *)accessToken - secret:(nullable NSString *)secret - pendingToken:(nullable NSString *)pendingToken { - self = [super initWithProvider:providerID]; - if (self) { - _IDToken = IDToken; - _rawNonce = rawNonce; - _accessToken = accessToken; - _pendingToken = pendingToken; - _secret = secret; - } - return self; -} - - (instancetype)initWithProviderID:(NSString *)providerID IDToken:(nullable NSString *)IDToken rawNonce:(nullable NSString *)rawNonce @@ -84,6 +67,7 @@ - (instancetype)initWithProviderID:(NSString *)providerID rawNonce:nil accessToken:nil secret:nil + displayName:nil pendingToken:nil]; if (self) { _OAuthResponseURLString = OAuthResponseURLString; @@ -100,6 +84,7 @@ - (nullable instancetype)initWithVerifyAssertionResponse:(FIRVerifyAssertionResp rawNonce:nil accessToken:response.oauthAccessToken secret:response.oauthSecretToken + displayName:response.displayName pendingToken:response.pendingToken]; } return nil; @@ -128,11 +113,13 @@ - (nullable instancetype)initWithCoder:(NSCoder *)aDecoder { NSString *accessToken = [aDecoder decodeObjectOfClass:[NSString class] forKey:@"accessToken"]; NSString *pendingToken = [aDecoder decodeObjectOfClass:[NSString class] forKey:@"pendingToken"]; NSString *secret = [aDecoder decodeObjectOfClass:[NSString class] forKey:@"secret"]; + NSString *displayName = [aDecoder decodeObjectOfClass:[NSString class] forKey:@"displayName"]; self = [self initWithProviderID:self.provider IDToken:IDToken rawNonce:rawNonce accessToken:accessToken secret:secret + displayName:displayName pendingToken:pendingToken]; return self; } @@ -143,6 +130,7 @@ - (void)encodeWithCoder:(NSCoder *)aCoder { [aCoder encodeObject:self.accessToken forKey:@"accessToken"]; [aCoder encodeObject:self.pendingToken forKey:@"pendingToken"]; [aCoder encodeObject:self.secret forKey:@"secret"]; + [aCoder encodeObject:self.displayName forKey:@"displayName"]; } @end diff --git a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential_Internal.h b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential_Internal.h index 29990275d20..305867a80cd 100644 --- a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential_Internal.h +++ b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential_Internal.h @@ -49,14 +49,8 @@ NS_ASSUME_NONNULL_BEGIN @param accessToken The access token associated with the credential being created. @param secret The secret associated with the credential being created. @param pendingToken The pending token associated with the credential being created. + @param displayName The displayName associated with the credential being created. */ -- (instancetype)initWithProviderID:(NSString *)providerID - IDToken:(nullable NSString *)IDToken - rawNonce:(nullable NSString *)rawNonce - accessToken:(nullable NSString *)accessToken - secret:(nullable NSString *)secret - pendingToken:(nullable NSString *)pendingToken NS_DESIGNATED_INITIALIZER; - - (instancetype)initWithProviderID:(NSString *)providerID IDToken:(nullable NSString *)IDToken rawNonce:(nullable NSString *)rawNonce diff --git a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthProvider.m b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthProvider.m index 6af5d260d2c..2f215169615 100644 --- a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthProvider.m +++ b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthProvider.m @@ -88,6 +88,7 @@ + (FIROAuthCredential *)credentialWithProviderID:(NSString *)providerID rawNonce:nil accessToken:accessToken secret:nil + displayName:nil pendingToken:nil]; } @@ -98,6 +99,7 @@ + (FIROAuthCredential *)credentialWithProviderID:(NSString *)providerID rawNonce:nil accessToken:accessToken secret:nil + displayName:nil pendingToken:nil]; } @@ -110,6 +112,7 @@ + (FIROAuthCredential *)credentialWithProviderID:(NSString *)providerID rawNonce:rawNonce accessToken:accessToken secret:nil + displayName:nil pendingToken:nil]; } @@ -121,6 +124,7 @@ + (FIROAuthCredential *)credentialWithProviderID:(NSString *)providerID rawNonce:rawNonce accessToken:nil secret:nil + displayName:nil pendingToken:nil]; } From f2853ae53347364405c49c33b58a49fc057d31f3 Mon Sep 17 00:00:00 2001 From: Yvonne Cheng Date: Tue, 9 Aug 2022 21:19:57 -0700 Subject: [PATCH 13/23] Add displayName in FIRVerifyAssertionRequest --- .../Sources/Backend/RPC/FIRVerifyAssertionRequest.m | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.m b/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.m index 7412af836c9..3344986ab86 100644 --- a/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.m +++ b/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.m @@ -84,6 +84,11 @@ */ static NSString *const kReturnSecureTokenKey = @"returnSecureToken"; +/** @var kDisplayName + @brief The key for the "displayName" value in the request. + */ +static NSString *const kDisplayNameKey = @"displayName"; + /** @var kReturnIDPCredentialKey @brief The key for the "returnIdpCredential" value in the request. */ @@ -171,6 +176,11 @@ - (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable) if (_sessionID) { body[kSessionIDKey] = _sessionID; } + + if (_displayName) { + body[kDisplayNameKey] = _displayName; + } + if (self.tenantID) { body[kTenantIDKey] = self.tenantID; } From a26395dd2fa48ad96972740a9e6ce09aa4fa635e Mon Sep 17 00:00:00 2001 From: Yvonne Cheng Date: Thu, 11 Aug 2022 22:00:16 -0700 Subject: [PATCH 14/23] Fix issues in comments, merge GoogleAuthprovider, fix files in tests --- .ruby-version | 2 +- .../AuthProvider/OAuth/FIROAuthCredential.m | 2 +- .../Public/FirebaseAuth/FIROAuthProvider.h | 1 + .../Tests/Sample/Sample/GoogleAuthProvider.m | 2 +- FirebaseAuth/Tests/Unit/FIRAuthTests.m | 21 ++++++++++--------- 5 files changed, 15 insertions(+), 13 deletions(-) diff --git a/.ruby-version b/.ruby-version index ef538c28109..fa376edcab7 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -3.1.2 +ruby-2.7 diff --git a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m index 2496057a51f..4c2e575e0c1 100644 --- a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m +++ b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m @@ -84,7 +84,7 @@ - (nullable instancetype)initWithVerifyAssertionResponse:(FIRVerifyAssertionResp rawNonce:nil accessToken:response.oauthAccessToken secret:response.oauthSecretToken - displayName:response.displayName + displayName:nil pendingToken:response.pendingToken]; } return nil; diff --git a/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthProvider.h b/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthProvider.h index f9a34a47e7f..e017078b026 100644 --- a/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthProvider.h +++ b/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthProvider.h @@ -113,6 +113,7 @@ NS_SWIFT_NAME(OAuthProvider) + (FIROAuthCredential *)credentialWithProviderID:(NSString *)providerID IDToken:(NSString *)IDToken rawNonce:(nullable NSString *)rawNonce; + /** @fn credentialWithProviderID:IDToken:rawNonce:accessToken: @brief Creates an `AuthCredential` for that OAuth 2 provider identified by provider ID, ID token, raw nonce, and access token. diff --git a/FirebaseAuth/Tests/Sample/Sample/GoogleAuthProvider.m b/FirebaseAuth/Tests/Sample/Sample/GoogleAuthProvider.m index 70632787919..694ed8680e0 100644 --- a/FirebaseAuth/Tests/Sample/Sample/GoogleAuthProvider.m +++ b/FirebaseAuth/Tests/Sample/Sample/GoogleAuthProvider.m @@ -46,7 +46,7 @@ - (void)getAuthCredentialWithPresentingViewController:(UIViewController *)viewCo } - (void)signOut { - [GIDSignIn.sharedInstance signOut]; + [GIDSignIn.sharedInstance signOut]; } - (NSString *)googleClientID { diff --git a/FirebaseAuth/Tests/Unit/FIRAuthTests.m b/FirebaseAuth/Tests/Unit/FIRAuthTests.m index a46717b41c4..2efff516e1e 100644 --- a/FirebaseAuth/Tests/Unit/FIRAuthTests.m +++ b/FirebaseAuth/Tests/Unit/FIRAuthTests.m @@ -160,10 +160,10 @@ */ static NSString *const kGoogleIDToken = @"GOOGLE_ID_TOKEN"; -/** @var FIRAppleAuthProviderID +/** @var kAppleAuthProviderID @brief The provider ID for Apple Sign-In. */ -NSString *const FIRAppleAuthProviderID = @"apple.com"; +NSString *const kAppleAuthProviderID = @"apple.com"; /** @var kAppleUD @brief The fake user ID under Apple Sign-In. @@ -1421,23 +1421,24 @@ - (void)testSignInWithGoogleCredentialFailure { OCMVerifyAll(_mockBackend); } -/** @fn testSignInWithAppleCredentialSuccess +/** @fn testSignInWithOAuthCredentialWithDisplayNameSuccess @brief Tests the flow of a successful @c signInWithCredential:completion: call with an Apple Sign-In credential. */ -- (void)testSignInWithAppleCredentialSuccess { +- (void)testSignInWithOAuthCredentialWithDisplayNameSuccess { OCMExpect([_mockBackend verifyAssertion:[OCMArg any] callback:[OCMArg any]]) .andCallBlock2(^(FIRVerifyAssertionRequest *_Nullable request, FIRVerifyAssertionResponseCallback callback) { XCTAssertEqualObjects(request.APIKey, kAPIKey); - XCTAssertEqualObjects(request.providerID, FIRAppleAuthProviderID); + XCTAssertEqualObjects(request.providerID, kAppleAuthProviderID); XCTAssertEqualObjects(request.providerIDToken, kAppleIDToken); XCTAssertEqualObjects(request.providerAccessToken, kAppleAccessToken); + XCTAssertEqualObjects(request.displayName, kAppleDisplayName); XCTAssertTrue(request.returnSecureToken); dispatch_async(FIRAuthGlobalWorkQueue(), ^() { id mockVerifyAssertionResponse = OCMClassMock([FIRVerifyAssertionResponse class]); OCMStub([mockVerifyAssertionResponse federatedID]).andReturn(kAppleID); - OCMStub([mockVerifyAssertionResponse providerID]).andReturn(FIRAppleAuthProviderID); + OCMStub([mockVerifyAssertionResponse providerID]).andReturn(kAppleAuthProviderID); OCMStub([mockVerifyAssertionResponse localID]).andReturn(kLocalID); OCMStub([mockVerifyAssertionResponse displayName]).andReturn(kAppleDisplayName); OCMStub([mockVerifyAssertionResponse profile]).andReturn([[self class] appleProfile]); @@ -1450,7 +1451,7 @@ - (void)testSignInWithAppleCredentialSuccess { XCTestExpectation *expectation = [self expectationWithDescription:@"callback"]; [[FIRAuth auth] signOut:NULL]; FIRAuthCredential *appleCredential = - [FIROAuthProvider credentialWithProviderID:FIRAppleAuthProviderID IDToken:kAppleIDToken rawNonce:nil accessToken:kAppleAccessToken displayName:kAppleDisplayName]; + [FIROAuthProvider credentialWithProviderID:kAppleAuthProviderID IDToken:kAppleIDToken rawNonce:nil accessToken:kAppleAccessToken displayName:kAppleDisplayName]; [[FIRAuth auth] signInWithCredential:appleCredential completion:^(FIRAuthDataResult *_Nullable authResult, NSError *_Nullable error) { @@ -1460,7 +1461,7 @@ - (void)testSignInWithAppleCredentialSuccess { [[self class] appleProfile]); XCTAssertEqualObjects(authResult.additionalUserInfo.username, kDisplayName); XCTAssertEqualObjects(authResult.additionalUserInfo.providerID, - FIRAppleAuthProviderID); + kAppleAuthProviderID); XCTAssertNil(error); [expectation fulfill]; }]; @@ -2691,7 +2692,7 @@ - (void)expectGetAccountInfoApple { XCTAssertEqualObjects(request.accessToken, kAccessToken); dispatch_async(FIRAuthGlobalWorkQueue(), ^() { id mockAppleUserInfo = OCMClassMock([FIRGetAccountInfoResponseProviderUserInfo class]); - OCMStub([mockAppleUserInfo providerID]).andReturn(FIRAppleAuthProviderID); + OCMStub([mockAppleUserInfo providerID]).andReturn(kAppleAuthProviderID); OCMStub([mockAppleUserInfo displayName]).andReturn(kAppleDisplayName); OCMStub([mockAppleUserInfo federatedID]).andReturn(kAppleID); OCMStub([mockAppleUserInfo email]).andReturn(kAppleEmail); @@ -2720,7 +2721,7 @@ - (void)assertUserApple:(FIRUser *)user { XCTAssertEqualObjects(user.displayName, kDisplayName); XCTAssertEqual(user.providerData.count, 1u); id appleUserInfo = user.providerData[0]; - XCTAssertEqualObjects(appleUserInfo.providerID, FIRAppleAuthProviderID); + XCTAssertEqualObjects(appleUserInfo.providerID, kAppleAuthProviderID); XCTAssertEqualObjects(appleUserInfo.uid, kAppleID); XCTAssertEqualObjects(appleUserInfo.displayName, kAppleDisplayName); XCTAssertEqualObjects(appleUserInfo.email, kAppleEmail); From f640537ad55705fa7658b1f90aae787495fef1e7 Mon Sep 17 00:00:00 2001 From: Yvonne Cheng Date: Thu, 11 Aug 2022 22:22:39 -0700 Subject: [PATCH 15/23] fix issues --- FirebaseAuth/Tests/Unit/FIRAuthTests.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FirebaseAuth/Tests/Unit/FIRAuthTests.m b/FirebaseAuth/Tests/Unit/FIRAuthTests.m index 2efff516e1e..64dd150dbe4 100644 --- a/FirebaseAuth/Tests/Unit/FIRAuthTests.m +++ b/FirebaseAuth/Tests/Unit/FIRAuthTests.m @@ -163,7 +163,7 @@ /** @var kAppleAuthProviderID @brief The provider ID for Apple Sign-In. */ -NSString *const kAppleAuthProviderID = @"apple.com"; +static NSString *const kAppleAuthProviderID = @"apple.com"; /** @var kAppleUD @brief The fake user ID under Apple Sign-In. From 1d8d3c8a93feeab0a9826de5ecdd069f5f4cd6d9 Mon Sep 17 00:00:00 2001 From: Yvonne Cheng Date: Fri, 12 Aug 2022 11:25:13 -0700 Subject: [PATCH 16/23] Clang-format all files --- FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthProvider.m | 2 +- .../Sources/Backend/RPC/FIRVerifyAssertionRequest.m | 4 ++-- FirebaseAuth/Tests/Unit/FIRAuthTests.m | 6 +++++- FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m | 7 +++++-- 4 files changed, 13 insertions(+), 6 deletions(-) diff --git a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthProvider.m b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthProvider.m index 2f215169615..ee67a01758a 100644 --- a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthProvider.m +++ b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthProvider.m @@ -132,7 +132,7 @@ + (FIROAuthCredential *)credentialWithProviderID:(NSString *)providerID IDToken:(NSString *)IDToken rawNonce:(nullable NSString *)rawNonce accessToken:(nullable NSString *)accessToken - displayName:(nonnull NSString *)displayName{ + displayName:(nonnull NSString *)displayName { return [[FIROAuthCredential alloc] initWithProviderID:providerID IDToken:IDToken rawNonce:rawNonce diff --git a/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.m b/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.m index 3344986ab86..4dca5c85df4 100644 --- a/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.m +++ b/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.m @@ -176,11 +176,11 @@ - (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable) if (_sessionID) { body[kSessionIDKey] = _sessionID; } - + if (_displayName) { body[kDisplayNameKey] = _displayName; } - + if (self.tenantID) { body[kTenantIDKey] = self.tenantID; } diff --git a/FirebaseAuth/Tests/Unit/FIRAuthTests.m b/FirebaseAuth/Tests/Unit/FIRAuthTests.m index 64dd150dbe4..41a5db31cbf 100644 --- a/FirebaseAuth/Tests/Unit/FIRAuthTests.m +++ b/FirebaseAuth/Tests/Unit/FIRAuthTests.m @@ -1451,7 +1451,11 @@ - (void)testSignInWithOAuthCredentialWithDisplayNameSuccess { XCTestExpectation *expectation = [self expectationWithDescription:@"callback"]; [[FIRAuth auth] signOut:NULL]; FIRAuthCredential *appleCredential = - [FIROAuthProvider credentialWithProviderID:kAppleAuthProviderID IDToken:kAppleIDToken rawNonce:nil accessToken:kAppleAccessToken displayName:kAppleDisplayName]; + [FIROAuthProvider credentialWithProviderID:kAppleAuthProviderID + IDToken:kAppleIDToken + rawNonce:nil + accessToken:kAppleAccessToken + displayName:kAppleDisplayName]; [[FIRAuth auth] signInWithCredential:appleCredential completion:^(FIRAuthDataResult *_Nullable authResult, NSError *_Nullable error) { diff --git a/FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m b/FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m index 4dce8eab5cc..c933ccf6f74 100644 --- a/FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m +++ b/FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m @@ -248,13 +248,16 @@ - (void)testObtainingOAuthCredentialNoIDToken { */ - (void)testObtainingOAuthCredentialWithDisplayName { FIRAuthCredential *credential = [FIROAuthProvider credentialWithProviderID:kFakeProviderID - IDToken:kFakeIDToken rawNonce:nil accessToken:kFakeAccessToken displayName:kFakeDisplayName]; + IDToken:kFakeIDToken + rawNonce:nil + accessToken:kFakeAccessToken + displayName:kFakeDisplayName]; XCTAssertTrue([credential isKindOfClass:[FIROAuthCredential class]]); FIROAuthCredential *OAuthCredential = (FIROAuthCredential *)credential; XCTAssertEqualObjects(OAuthCredential.accessToken, kFakeAccessToken); XCTAssertEqualObjects(OAuthCredential.provider, kFakeProviderID); XCTAssertEqualObjects(OAuthCredential.IDToken, kFakeIDToken); - XCTAssertEqualObjects(OAuthCredential.displayName,kFakeDisplayName); + XCTAssertEqualObjects(OAuthCredential.displayName, kFakeDisplayName); } /** @fn testObtainingOAuthCredentialWithIDToken From c3389c6bb9d4c56d819037349c3a03c41295127f Mon Sep 17 00:00:00 2001 From: Yvonne Cheng Date: Fri, 12 Aug 2022 14:15:05 -0700 Subject: [PATCH 17/23] Adding comment for testSignInWithCredentialSuccess --- FirebaseAuth/Tests/Unit/FIRAuthTests.m | 1 + 1 file changed, 1 insertion(+) diff --git a/FirebaseAuth/Tests/Unit/FIRAuthTests.m b/FirebaseAuth/Tests/Unit/FIRAuthTests.m index 41a5db31cbf..d61f7633ec0 100644 --- a/FirebaseAuth/Tests/Unit/FIRAuthTests.m +++ b/FirebaseAuth/Tests/Unit/FIRAuthTests.m @@ -1424,6 +1424,7 @@ - (void)testSignInWithGoogleCredentialFailure { /** @fn testSignInWithOAuthCredentialWithDisplayNameSuccess @brief Tests the flow of a successful @c signInWithCredential:completion: call with an Apple Sign-In credential. + This method differntiate the testSignInWithCredentialSuccess only in verifying displayName */ - (void)testSignInWithOAuthCredentialWithDisplayNameSuccess { OCMExpect([_mockBackend verifyAssertion:[OCMArg any] callback:[OCMArg any]]) From cfe6f4ead990da8520901d0cb9dcfb3f71d9bf75 Mon Sep 17 00:00:00 2001 From: Yvonne Cheng Date: Fri, 12 Aug 2022 14:15:37 -0700 Subject: [PATCH 18/23] Adding comments for testSignInWithCredentialSuccess --- FirebaseAuth/Tests/Unit/FIRAuthTests.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FirebaseAuth/Tests/Unit/FIRAuthTests.m b/FirebaseAuth/Tests/Unit/FIRAuthTests.m index d61f7633ec0..f3d12561daf 100644 --- a/FirebaseAuth/Tests/Unit/FIRAuthTests.m +++ b/FirebaseAuth/Tests/Unit/FIRAuthTests.m @@ -1424,7 +1424,7 @@ - (void)testSignInWithGoogleCredentialFailure { /** @fn testSignInWithOAuthCredentialWithDisplayNameSuccess @brief Tests the flow of a successful @c signInWithCredential:completion: call with an Apple Sign-In credential. - This method differntiate the testSignInWithCredentialSuccess only in verifying displayName + This method differntiates the testSignInWithCredentialSuccess only in verifying displayName */ - (void)testSignInWithOAuthCredentialWithDisplayNameSuccess { OCMExpect([_mockBackend verifyAssertion:[OCMArg any] callback:[OCMArg any]]) From 3dcc540d898d53bca02ec32bb1442acda2022fd0 Mon Sep 17 00:00:00 2001 From: Rosalyn Tan Date: Thu, 16 Feb 2023 15:38:38 -0800 Subject: [PATCH 19/23] Updates to reflect approved API. --- .../AuthProvider/OAuth/FIROAuthCredential.m | 17 +++---- .../OAuth/FIROAuthCredential_Internal.h | 11 +++-- .../AuthProvider/OAuth/FIROAuthProvider.m | 22 ++++----- .../Backend/RPC/FIRVerifyAssertionRequest.h | 6 +-- .../Backend/RPC/FIRVerifyAssertionRequest.m | 47 ++++++++++++++++--- .../Public/FirebaseAuth/FIROAuthCredential.h | 5 -- .../Public/FirebaseAuth/FIROAuthProvider.h | 28 +++++------ .../Sample/Sample/MainViewController+OAuth.m | 10 ++-- 8 files changed, 86 insertions(+), 60 deletions(-) diff --git a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m index 4c2e575e0c1..d066a6ffa49 100644 --- a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m +++ b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential.m @@ -45,7 +45,7 @@ - (instancetype)initWithProviderID:(NSString *)providerID rawNonce:(nullable NSString *)rawNonce accessToken:(nullable NSString *)accessToken secret:(nullable NSString *)secret - displayName:(nullable NSString *)displayName + fullName:(nullable NSPersonNameComponents *)fullName pendingToken:(nullable NSString *)pendingToken { self = [super initWithProvider:providerID]; if (self) { @@ -54,7 +54,7 @@ - (instancetype)initWithProviderID:(NSString *)providerID _accessToken = accessToken; _pendingToken = pendingToken; _secret = secret; - _displayName = displayName; + _fullName = fullName; } return self; } @@ -67,7 +67,7 @@ - (instancetype)initWithProviderID:(NSString *)providerID rawNonce:nil accessToken:nil secret:nil - displayName:nil + fullName:nil pendingToken:nil]; if (self) { _OAuthResponseURLString = OAuthResponseURLString; @@ -84,7 +84,7 @@ - (nullable instancetype)initWithVerifyAssertionResponse:(FIRVerifyAssertionResp rawNonce:nil accessToken:response.oauthAccessToken secret:response.oauthSecretToken - displayName:nil + fullName:nil pendingToken:response.pendingToken]; } return nil; @@ -98,7 +98,7 @@ - (void)prepareVerifyAssertionRequest:(FIRVerifyAssertionRequest *)request { request.sessionID = _sessionID; request.providerOAuthTokenSecret = _secret; request.pendingToken = _pendingToken; - request.displayName = _displayName; + request.fullName = _fullName; } #pragma mark - NSSecureCoding @@ -113,13 +113,14 @@ - (nullable instancetype)initWithCoder:(NSCoder *)aDecoder { NSString *accessToken = [aDecoder decodeObjectOfClass:[NSString class] forKey:@"accessToken"]; NSString *pendingToken = [aDecoder decodeObjectOfClass:[NSString class] forKey:@"pendingToken"]; NSString *secret = [aDecoder decodeObjectOfClass:[NSString class] forKey:@"secret"]; - NSString *displayName = [aDecoder decodeObjectOfClass:[NSString class] forKey:@"displayName"]; + NSPersonNameComponents *fullName = [aDecoder decodeObjectOfClass:[NSPersonNameComponents class] + forKey:@"fullName"]; self = [self initWithProviderID:self.provider IDToken:IDToken rawNonce:rawNonce accessToken:accessToken secret:secret - displayName:displayName + fullName:fullName pendingToken:pendingToken]; return self; } @@ -130,7 +131,7 @@ - (void)encodeWithCoder:(NSCoder *)aCoder { [aCoder encodeObject:self.accessToken forKey:@"accessToken"]; [aCoder encodeObject:self.pendingToken forKey:@"pendingToken"]; [aCoder encodeObject:self.secret forKey:@"secret"]; - [aCoder encodeObject:self.displayName forKey:@"displayName"]; + [aCoder encodeObject:self.fullName forKey:@"fullName"]; } @end diff --git a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential_Internal.h b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential_Internal.h index 305867a80cd..d120071e3ea 100644 --- a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential_Internal.h +++ b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential_Internal.h @@ -41,22 +41,27 @@ NS_ASSUME_NONNULL_BEGIN */ @property(nonatomic, readonly, nullable) NSString *pendingToken; -/** @fn initWithProviderId:IDToken:accessToken:secret:pendingToken +/** @property fullName + @brief The full name of the user associated with this OAuthCredential. + */ +@property(nonatomic, readonly, nullable) NSPersonNameComponents *fullName; + +/** @fn initWithProviderId:IDToken:rawNonce:accessToken:secret:fullName:pendingToken @brief Designated initializer. @param providerID The provider ID associated with the credential being created. @param IDToken The ID Token associated with the credential being created. @param rawNonce The raw nonce associated with the Auth credential being created. @param accessToken The access token associated with the credential being created. @param secret The secret associated with the credential being created. + @param fullName The displayName associated with the credential being created. @param pendingToken The pending token associated with the credential being created. - @param displayName The displayName associated with the credential being created. */ - (instancetype)initWithProviderID:(NSString *)providerID IDToken:(nullable NSString *)IDToken rawNonce:(nullable NSString *)rawNonce accessToken:(nullable NSString *)accessToken secret:(nullable NSString *)secret - displayName:(nullable NSString *)displayName + fullName:(nullable NSPersonNameComponents *)fullName pendingToken:(nullable NSString *)pendingToken NS_DESIGNATED_INITIALIZER; /** @fn initWithProviderId:sessionID:OAuthResponseURLString: diff --git a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthProvider.m b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthProvider.m index ee67a01758a..2f40fdbc438 100644 --- a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthProvider.m +++ b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthProvider.m @@ -88,7 +88,7 @@ + (FIROAuthCredential *)credentialWithProviderID:(NSString *)providerID rawNonce:nil accessToken:accessToken secret:nil - displayName:nil + fullName:nil pendingToken:nil]; } @@ -99,7 +99,7 @@ + (FIROAuthCredential *)credentialWithProviderID:(NSString *)providerID rawNonce:nil accessToken:accessToken secret:nil - displayName:nil + fullName:nil pendingToken:nil]; } @@ -112,7 +112,7 @@ + (FIROAuthCredential *)credentialWithProviderID:(NSString *)providerID rawNonce:rawNonce accessToken:accessToken secret:nil - displayName:nil + fullName:nil pendingToken:nil]; } @@ -124,21 +124,19 @@ + (FIROAuthCredential *)credentialWithProviderID:(NSString *)providerID rawNonce:rawNonce accessToken:nil secret:nil - displayName:nil + fullName:nil pendingToken:nil]; } -+ (FIROAuthCredential *)credentialWithProviderID:(NSString *)providerID - IDToken:(NSString *)IDToken - rawNonce:(nullable NSString *)rawNonce - accessToken:(nullable NSString *)accessToken - displayName:(nonnull NSString *)displayName { - return [[FIROAuthCredential alloc] initWithProviderID:providerID ++ (FIROAuthCredential *)appleCredentialWithIDToken:(NSString *)IDToken + rawNonce:(nullable NSString *)rawNonce + fullName:(nullable NSPersonNameComponents *)fullName { + return [[FIROAuthCredential alloc] initWithProviderID:@"apple.com" IDToken:IDToken rawNonce:rawNonce - accessToken:accessToken + accessToken:nil secret:nil - displayName:displayName + fullName:fullName pendingToken:nil]; } diff --git a/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.h b/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.h index 5a1a3a7497a..7f5b3e09ed5 100644 --- a/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.h +++ b/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.h @@ -96,10 +96,10 @@ NS_ASSUME_NONNULL_BEGIN */ @property(nonatomic, assign) BOOL autoCreate; -/** @property displayName - @brief A displayName linked to its provider +/** @property fullName + @brief A full name from the IDP. */ -@property(nonatomic, copy, nullable) NSString *displayName; +@property(nonatomic, copy, nullable) NSPersonNameComponents *fullName; /** @fn initWithEndpoint:requestConfiguration: @brief Please use initWithProviderID:requestConfifuration instead. diff --git a/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.m b/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.m index 4dca5c85df4..13710d4fbbd 100644 --- a/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.m +++ b/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.m @@ -84,10 +84,27 @@ */ static NSString *const kReturnSecureTokenKey = @"returnSecureToken"; -/** @var kDisplayName - @brief The key for the "displayName" value in the request. +/** @var kUserKey + @brief The key for the "user" value in the request. The value is a JSON object that contains the + name of the user. */ -static NSString *const kDisplayNameKey = @"displayName"; +static NSString *const kUserKey = @"user"; + +/** @var kNameKey + @brief The key for the "name" value in the request. The value is a JSON object that contains the + first and/or last name of the user. + */ +static NSString *const kNameKey = @"name"; + +/** @var kFirstNameKey + @brief The key for the "firstName" value in the request. + */ +static NSString *const kFirstNameKey = @"firstName"; + +/** @var kLastNameKey + @brief The key for the "lastName" value in the request. + */ +static NSString *const kLastNameKey = @"lastName"; /** @var kReturnIDPCredentialKey @brief The key for the "returnIdpCredential" value in the request. @@ -153,6 +170,26 @@ - (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable) if (_inputEmail) { [queryItems addObject:[NSURLQueryItem queryItemWithName:kIdentifierKey value:_inputEmail]]; } + + if (_fullName.givenName || _fullName.familyName) { + NSMutableDictionary *nameDict = [[NSMutableDictionary alloc] init]; + if (_fullName.givenName) { + nameDict[kFirstNameKey] = _fullName.givenName; + } + if (_fullName.familyName) { + nameDict[kLastNameKey] = _fullName.familyName; + } + NSDictionary *userDict = [NSDictionary dictionaryWithObject:nameDict forKey:kNameKey]; + NSData *userJson = [NSJSONSerialization dataWithJSONObject:userDict + options:NSJSONWritingPrettyPrinted + error:error]; + [queryItems + addObject:[NSURLQueryItem + queryItemWithName:kUserKey + value:[[NSString alloc] initWithData:userJson + encoding:NSUTF8StringEncoding]]]; + } + [components setQueryItems:queryItems]; NSMutableDictionary *body = [@{ kRequestURIKey : _requestURI ?: @"http://localhost", // Unused by server, but required @@ -177,10 +214,6 @@ - (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable) body[kSessionIDKey] = _sessionID; } - if (_displayName) { - body[kDisplayNameKey] = _displayName; - } - if (self.tenantID) { body[kTenantIDKey] = self.tenantID; } diff --git a/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthCredential.h b/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthCredential.h index 24de8742123..94abe4f22b4 100644 --- a/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthCredential.h +++ b/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthCredential.h @@ -43,11 +43,6 @@ NS_SWIFT_NAME(OAuthCredential) */ @property(nonatomic, readonly, nullable) NSString *secret; -/** @property displayName - @brief The displayName associated with this credential. - */ -@property(nonatomic, readonly, nullable) NSString *displayName; - /** @fn init @brief This class is not supposed to be instantiated directly. */ diff --git a/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthProvider.h b/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthProvider.h index e017078b026..50906eaf12f 100644 --- a/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthProvider.h +++ b/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthProvider.h @@ -114,23 +114,19 @@ NS_SWIFT_NAME(OAuthProvider) IDToken:(NSString *)IDToken rawNonce:(nullable NSString *)rawNonce; -/** @fn credentialWithProviderID:IDToken:rawNonce:accessToken: - @brief Creates an `AuthCredential` for that OAuth 2 provider identified by provider ID, ID - token, raw nonce, and access token. - - @param providerID The provider ID associated with the Auth credential being created. - @param IDToken The IDToken associated with the Auth credential being created. - @param rawNonce The raw nonce associated with the Auth credential being created. - @param accessToken The access token associated with the Auth credential be created, if - available. - @param displayName The displayName associated with the Auth credential being created. - @return A `AuthCredential` for the specified provider ID, ID token and access token. +/** @fn appleCredentialWithIDToken:rawNonce:fullName: + * @brief Creates an `AuthCredential` for the Sign in with Apple OAuth 2 provider identified by ID + * token, raw nonce, and full name. + * + * @param IDToken The IDToken associated with the Sign in with Apple Auth credential being created. + * @param rawNonce The raw nonce associated with the Sign in with Apple Auth credential being + * created. + * @param fullName The full name associated with the Sign in with Apple Auth credential being + * created. */ -+ (FIROAuthCredential *)credentialWithProviderID:(NSString *)providerID - IDToken:(NSString *)IDToken - rawNonce:(nullable NSString *)rawNonce - accessToken:(nullable NSString *)accessToken - displayName:(NSString *)displayName; ++ (FIROAuthCredential *)appleCredentialWithIDToken:(NSString *)IDToken + rawNonce:(nullable NSString *)rawNonce + fullName:(nullable NSPersonNameComponents *)fullName; /** @fn init @brief This class is not meant to be initialized. diff --git a/FirebaseAuth/Tests/Sample/Sample/MainViewController+OAuth.m b/FirebaseAuth/Tests/Sample/Sample/MainViewController+OAuth.m index c65010c93ee..03d47cb1af5 100644 --- a/FirebaseAuth/Tests/Sample/Sample/MainViewController+OAuth.m +++ b/FirebaseAuth/Tests/Sample/Sample/MainViewController+OAuth.m @@ -410,12 +410,10 @@ - (void)reauthenticateWithApple { - (void)authorizationController:(ASAuthorizationController *)controller didCompleteWithAuthorization:(ASAuthorization *)authorization API_AVAILABLE(ios(13.0)) { ASAuthorizationAppleIDCredential* appleIDCredential = authorization.credential; NSString *IDToken = [NSString stringWithUTF8String:[appleIDCredential.identityToken bytes]]; - NSString *displayName = [appleIDCredential.fullName.givenName stringByAppendingFormat:@" %@", appleIDCredential.fullName.familyName]; - FIROAuthCredential *credential = [FIROAuthProvider credentialWithProviderID:@"apple.com" - IDToken:IDToken - rawNonce:self.appleRawNonce - accessToken:nil - displayName:displayName]; + FIROAuthCredential *credential = + [FIROAuthProvider appleCredentialWithIDToken:IDToken + rawNonce:self.appleRawNonce + fullName:appleIDCredential.fullName]; if ([appleIDCredential.state isEqualToString:@"signIn"]) { [FIRAuth.auth signInWithCredential:credential completion:^(FIRAuthDataResult * _Nullable authResult, NSError * _Nullable error) { From 9c54381143a0f59b4b7470fb9023b2a48aa324c0 Mon Sep 17 00:00:00 2001 From: Rosalyn Tan Date: Tue, 21 Feb 2023 07:44:23 -1000 Subject: [PATCH 20/23] Address review comments. --- .../Sources/AuthProvider/OAuth/FIROAuthCredential_Internal.h | 2 +- FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.h | 2 +- FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthProvider.h | 4 +++- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential_Internal.h b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential_Internal.h index d120071e3ea..2d05bccb9f0 100644 --- a/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential_Internal.h +++ b/FirebaseAuth/Sources/AuthProvider/OAuth/FIROAuthCredential_Internal.h @@ -53,7 +53,7 @@ NS_ASSUME_NONNULL_BEGIN @param rawNonce The raw nonce associated with the Auth credential being created. @param accessToken The access token associated with the credential being created. @param secret The secret associated with the credential being created. - @param fullName The displayName associated with the credential being created. + @param fullName The full name associated with the credential being created. @param pendingToken The pending token associated with the credential being created. */ - (instancetype)initWithProviderID:(NSString *)providerID diff --git a/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.h b/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.h index 7f5b3e09ed5..f69c12b948e 100644 --- a/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.h +++ b/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.h @@ -97,7 +97,7 @@ NS_ASSUME_NONNULL_BEGIN @property(nonatomic, assign) BOOL autoCreate; /** @property fullName - @brief A full name from the IDP. + @brief A full name from the IdP. */ @property(nonatomic, copy, nullable) NSPersonNameComponents *fullName; diff --git a/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthProvider.h b/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthProvider.h index 50906eaf12f..2c2128c1128 100644 --- a/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthProvider.h +++ b/FirebaseAuth/Sources/Public/FirebaseAuth/FIROAuthProvider.h @@ -116,13 +116,15 @@ NS_SWIFT_NAME(OAuthProvider) /** @fn appleCredentialWithIDToken:rawNonce:fullName: * @brief Creates an `AuthCredential` for the Sign in with Apple OAuth 2 provider identified by ID - * token, raw nonce, and full name. + * token, raw nonce, and full name. This method is specific to the Sign in with Apple OAuth 2 + * provider as this provider requires the full name to be passed explicitly. * * @param IDToken The IDToken associated with the Sign in with Apple Auth credential being created. * @param rawNonce The raw nonce associated with the Sign in with Apple Auth credential being * created. * @param fullName The full name associated with the Sign in with Apple Auth credential being * created. + * @return An `AuthCredential`. */ + (FIROAuthCredential *)appleCredentialWithIDToken:(NSString *)IDToken rawNonce:(nullable NSString *)rawNonce From b7d0afed852d03791c892f67ddbb76273df649e3 Mon Sep 17 00:00:00 2001 From: Rosalyn Tan Date: Tue, 21 Feb 2023 13:19:17 -1000 Subject: [PATCH 21/23] Update unit tests. --- FirebaseAuth/Tests/Unit/FIRAuthTests.m | 150 +++++------------- .../Tests/Unit/FIROAuthProviderTests.m | 35 ++-- 2 files changed, 62 insertions(+), 123 deletions(-) diff --git a/FirebaseAuth/Tests/Unit/FIRAuthTests.m b/FirebaseAuth/Tests/Unit/FIRAuthTests.m index f3d12561daf..22741b583cc 100644 --- a/FirebaseAuth/Tests/Unit/FIRAuthTests.m +++ b/FirebaseAuth/Tests/Unit/FIRAuthTests.m @@ -135,6 +135,16 @@ */ static NSString *const kDisplayName = @"User Doe"; +/** @var kFakeGivenName + @brief The fake user given name. + */ +static NSString *const kFakeGivenName = @"Firstname"; + +/** @var kFakeFamilyName + @brief The fake user family name. + */ +static NSString *const kFakeFamilyName = @"Lastname"; + /** @var kGoogleUD @brief The fake user ID under Google Sign-In. */ @@ -165,26 +175,6 @@ */ static NSString *const kAppleAuthProviderID = @"apple.com"; -/** @var kAppleUD - @brief The fake user ID under Apple Sign-In. - */ -static NSString *const kAppleID = @"APPLE_ID"; - -/** @var kAppleEmail - @brief The fake user email under Apple Sign-In. - */ -static NSString *const kAppleEmail = @"user@icloud.com"; - -/** @var kAppleDisplayName - @brief The fake user display name under Apple Sign-In. - */ -static NSString *const kAppleDisplayName = @"Apple Doe"; - -/** @var kAppleAccessToken - @brief The fake access token from Apple Sign-In. - */ -static NSString *const kAppleAccessToken = @"Apple_ACCESS_TOKEN"; - /** @var kAppleIDToken @brief The fake ID token from Apple Sign-In. */ @@ -351,23 +341,6 @@ + (NSDictionary *)googleProfile { return kGoogleProfile; } -/** @fn appleProfile - @brief The fake user profile under additional user data in @c FIRVerifyAssertionResponse. - */ -+ (NSDictionary *)appleProfile { - static NSDictionary *kAppleProfile = nil; - static dispatch_once_t onceToken; - dispatch_once(&onceToken, ^{ - kAppleProfile = @{ - @"iss" : @"https://accounts.apple.com\\", - @"email" : kAppleEmail, - @"given_name" : @"User", - @"family_name" : @"Doe" - }; - }); - return kAppleProfile; -} - - (void)setUp { [super setUp]; @@ -1421,57 +1394,63 @@ - (void)testSignInWithGoogleCredentialFailure { OCMVerifyAll(_mockBackend); } -/** @fn testSignInWithOAuthCredentialWithDisplayNameSuccess +/** @fn testSignInWithAppleCredentialFullNameInRequest @brief Tests the flow of a successful @c signInWithCredential:completion: call - with an Apple Sign-In credential. - This method differntiates the testSignInWithCredentialSuccess only in verifying displayName + with an Apple Sign-In credential with a full name. This test differentiates from + @c testSignInWithCredentialSuccess only in verifying the full name. */ -- (void)testSignInWithOAuthCredentialWithDisplayNameSuccess { +- (void)testSignInWithAppleCredentialFullNameInRequestSuccess { + NSPersonNameComponents *fullName = [[NSPersonNameComponents alloc] init]; + fullName.givenName = kFakeGivenName; + fullName.familyName = kFakeFamilyName; OCMExpect([_mockBackend verifyAssertion:[OCMArg any] callback:[OCMArg any]]) .andCallBlock2(^(FIRVerifyAssertionRequest *_Nullable request, FIRVerifyAssertionResponseCallback callback) { XCTAssertEqualObjects(request.APIKey, kAPIKey); XCTAssertEqualObjects(request.providerID, kAppleAuthProviderID); XCTAssertEqualObjects(request.providerIDToken, kAppleIDToken); - XCTAssertEqualObjects(request.providerAccessToken, kAppleAccessToken); - XCTAssertEqualObjects(request.displayName, kAppleDisplayName); + // Verify that the full name is passed to the backend request. + XCTAssertEqualObjects(request.fullName, fullName); XCTAssertTrue(request.returnSecureToken); dispatch_async(FIRAuthGlobalWorkQueue(), ^() { id mockVerifyAssertionResponse = OCMClassMock([FIRVerifyAssertionResponse class]); - OCMStub([mockVerifyAssertionResponse federatedID]).andReturn(kAppleID); OCMStub([mockVerifyAssertionResponse providerID]).andReturn(kAppleAuthProviderID); - OCMStub([mockVerifyAssertionResponse localID]).andReturn(kLocalID); - OCMStub([mockVerifyAssertionResponse displayName]).andReturn(kAppleDisplayName); - OCMStub([mockVerifyAssertionResponse profile]).andReturn([[self class] appleProfile]); - OCMStub([mockVerifyAssertionResponse username]).andReturn(kDisplayName); [self stubTokensWithMockResponse:mockVerifyAssertionResponse]; callback(mockVerifyAssertionResponse, nil); }); }); - [self expectGetAccountInfoApple]; + OCMExpect([_mockBackend getAccountInfo:[OCMArg any] callback:[OCMArg any]]) + .andCallBlock2(^(FIRGetAccountInfoRequest *_Nullable request, + FIRGetAccountInfoResponseCallback callback) { + XCTAssertEqualObjects(request.APIKey, kAPIKey); + XCTAssertEqualObjects(request.accessToken, kAccessToken); + dispatch_async(FIRAuthGlobalWorkQueue(), ^() { + id mockAppleUserInfo = OCMClassMock([FIRGetAccountInfoResponseProviderUserInfo class]); + OCMStub([mockAppleUserInfo providerID]).andReturn(kAppleAuthProviderID); + id mockGetAccountInfoResponseUser = OCMClassMock([FIRGetAccountInfoResponseUser class]); + OCMStub([mockGetAccountInfoResponseUser providerUserInfo]) + .andReturn((@[ mockAppleUserInfo ])); + id mockGetAccountInfoResponse = OCMClassMock([FIRGetAccountInfoResponse class]); + OCMStub([mockGetAccountInfoResponse users]).andReturn(@[ + mockGetAccountInfoResponseUser + ]); + callback(mockGetAccountInfoResponse, nil); + }); + }); XCTestExpectation *expectation = [self expectationWithDescription:@"callback"]; [[FIRAuth auth] signOut:NULL]; - FIRAuthCredential *appleCredential = - [FIROAuthProvider credentialWithProviderID:kAppleAuthProviderID - IDToken:kAppleIDToken - rawNonce:nil - accessToken:kAppleAccessToken - displayName:kAppleDisplayName]; + FIRAuthCredential *appleCredential = [FIROAuthProvider appleCredentialWithIDToken:kAppleIDToken + rawNonce:nil + fullName:fullName]; [[FIRAuth auth] signInWithCredential:appleCredential completion:^(FIRAuthDataResult *_Nullable authResult, NSError *_Nullable error) { XCTAssertTrue([NSThread isMainThread]); - [self assertUserApple:authResult.user]; - XCTAssertEqualObjects(authResult.additionalUserInfo.profile, - [[self class] appleProfile]); - XCTAssertEqualObjects(authResult.additionalUserInfo.username, kDisplayName); - XCTAssertEqualObjects(authResult.additionalUserInfo.providerID, - kAppleAuthProviderID); XCTAssertNil(error); [expectation fulfill]; }]; [self waitForExpectationsWithTimeout:kExpectationTimeout handler:nil]; - [self assertUserApple:[FIRAuth auth].currentUser]; + XCTAssertNotNil([FIRAuth auth].currentUser); OCMVerifyAll(_mockBackend); } @@ -2685,53 +2664,6 @@ - (void)assertUserGoogle:(FIRUser *)user { XCTAssertEqualObjects(googleUserInfo.email, kGoogleEmail); } -/** @fn expectGetAccountInfoApple - @brief Expects a GetAccountInfo request on the mock backend and calls back with fake account - data for a Apple Sign-In user. - */ -- (void)expectGetAccountInfoApple { - OCMExpect([_mockBackend getAccountInfo:[OCMArg any] callback:[OCMArg any]]) - .andCallBlock2(^(FIRGetAccountInfoRequest *_Nullable request, - FIRGetAccountInfoResponseCallback callback) { - XCTAssertEqualObjects(request.APIKey, kAPIKey); - XCTAssertEqualObjects(request.accessToken, kAccessToken); - dispatch_async(FIRAuthGlobalWorkQueue(), ^() { - id mockAppleUserInfo = OCMClassMock([FIRGetAccountInfoResponseProviderUserInfo class]); - OCMStub([mockAppleUserInfo providerID]).andReturn(kAppleAuthProviderID); - OCMStub([mockAppleUserInfo displayName]).andReturn(kAppleDisplayName); - OCMStub([mockAppleUserInfo federatedID]).andReturn(kAppleID); - OCMStub([mockAppleUserInfo email]).andReturn(kAppleEmail); - id mockGetAccountInfoResponseUser = OCMClassMock([FIRGetAccountInfoResponseUser class]); - OCMStub([mockGetAccountInfoResponseUser localID]).andReturn(kLocalID); - OCMStub([mockGetAccountInfoResponseUser displayName]).andReturn(kDisplayName); - OCMStub([mockGetAccountInfoResponseUser providerUserInfo]) - .andReturn((@[ mockAppleUserInfo ])); - id mockGetAccountInfoResponse = OCMClassMock([FIRGetAccountInfoResponse class]); - OCMStub([mockGetAccountInfoResponse users]).andReturn(@[ - mockGetAccountInfoResponseUser - ]); - callback(mockGetAccountInfoResponse, nil); - }); - }); -} - -/** @fn assertUserApple - @brief Asserts the given FIRUser matching the fake data returned by - @c expectGetAccountInfoApple. - @param user The user object to be verified. - */ -- (void)assertUserApple:(FIRUser *)user { - XCTAssertNotNil(user); - XCTAssertEqualObjects(user.uid, kLocalID); - XCTAssertEqualObjects(user.displayName, kDisplayName); - XCTAssertEqual(user.providerData.count, 1u); - id appleUserInfo = user.providerData[0]; - XCTAssertEqualObjects(appleUserInfo.providerID, kAppleAuthProviderID); - XCTAssertEqualObjects(appleUserInfo.uid, kAppleID); - XCTAssertEqualObjects(appleUserInfo.displayName, kAppleDisplayName); - XCTAssertEqualObjects(appleUserInfo.email, kAppleEmail); -} - /** @fn expectGetAccountInfoAnonymous @brief Expects a GetAccountInfo request on the mock backend and calls back with fake anonymous account data. diff --git a/FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m b/FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m index c933ccf6f74..20619ab344d 100644 --- a/FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m +++ b/FirebaseAuth/Tests/Unit/FIROAuthProviderTests.m @@ -67,10 +67,15 @@ */ static NSString *const kFakeProviderID = @"fakeProviderID"; -/** @var kFakeProviderID - @brief A fake provider ID for testing. +/** @var kFakeGivenName + @brief A fake given name for testing. */ -static NSString *const kFakeDisplayName = @"fakeDisplayName"; +static NSString *const kFakeGivenName = @"fakeGivenName"; + +/** @var kFakeFamilyName + @brief A fake family name for testing. + */ +static NSString *const kFakeFamilyName = @"fakeFamilyName"; /** @var kFakeAPIKey @brief A fake API key. @@ -243,21 +248,23 @@ - (void)testObtainingOAuthCredentialNoIDToken { XCTAssertNil(OAuthCredential.IDToken); } -/** @fn testObtainingOAuthCredentialWithDisplayName - @brief Tests the correct creation of an OAuthCredential with a displayName. +/** @fn testObtainingOAuthCredentialWithFullName + @brief Tests the correct creation of an OAuthCredential with a fullName. */ -- (void)testObtainingOAuthCredentialWithDisplayName { - FIRAuthCredential *credential = [FIROAuthProvider credentialWithProviderID:kFakeProviderID - IDToken:kFakeIDToken - rawNonce:nil - accessToken:kFakeAccessToken - displayName:kFakeDisplayName]; +- (void)testObtainingOAuthCredentialWithFullName { + NSPersonNameComponents *fullName = [[NSPersonNameComponents alloc] init]; + fullName.givenName = kFakeGivenName; + fullName.familyName = kFakeFamilyName; + FIRAuthCredential *credential = [FIROAuthProvider appleCredentialWithIDToken:kFakeIDToken + rawNonce:nil + fullName:fullName]; + XCTAssertTrue([credential isKindOfClass:[FIROAuthCredential class]]); FIROAuthCredential *OAuthCredential = (FIROAuthCredential *)credential; - XCTAssertEqualObjects(OAuthCredential.accessToken, kFakeAccessToken); - XCTAssertEqualObjects(OAuthCredential.provider, kFakeProviderID); + XCTAssertEqualObjects(OAuthCredential.provider, @"apple.com"); XCTAssertEqualObjects(OAuthCredential.IDToken, kFakeIDToken); - XCTAssertEqualObjects(OAuthCredential.displayName, kFakeDisplayName); + XCTAssertEqualObjects(OAuthCredential.fullName, fullName); + XCTAssertNil(OAuthCredential.accessToken); } /** @fn testObtainingOAuthCredentialWithIDToken From 05a9c50c1c0c51c85081200a19219fd78d6f86fd Mon Sep 17 00:00:00 2001 From: Rosalyn Tan Date: Thu, 2 Mar 2023 14:08:24 -1000 Subject: [PATCH 22/23] Update changelog. --- FirebaseAuth/CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/FirebaseAuth/CHANGELOG.md b/FirebaseAuth/CHANGELOG.md index 8203aeebb22..1b2090cbcf0 100644 --- a/FirebaseAuth/CHANGELOG.md +++ b/FirebaseAuth/CHANGELOG.md @@ -1,3 +1,6 @@ +# Unreleased +- [added] Added an API for developers to pass the fullName from the Sign in with Apple credential to Firebase. (#10068) + # 10.6.0 - [fixed] Fixed a bug where user is created in a specific tenant although tenantID was not specified. (#10748) - [fixed] Fixed a bug where the resolver exposed in MFA is not associated to the correct app. (#10690) From b062ec1f03ddf03cba42e0ba25c8bb8e6c6c724f Mon Sep 17 00:00:00 2001 From: Rosalyn Tan Date: Thu, 2 Mar 2023 14:41:06 -1000 Subject: [PATCH 23/23] Remove JSON pretty-print and add one more unit test. --- .../Backend/RPC/FIRVerifyAssertionRequest.m | 4 +--- .../Unit/FIRVerifyAssertionRequestTests.m | 24 +++++++++++++++++++ 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.m b/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.m index 13710d4fbbd..57e6ec084d0 100644 --- a/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.m +++ b/FirebaseAuth/Sources/Backend/RPC/FIRVerifyAssertionRequest.m @@ -180,9 +180,7 @@ - (nullable id)unencodedHTTPRequestBodyWithError:(NSError *_Nullable *_Nullable) nameDict[kLastNameKey] = _fullName.familyName; } NSDictionary *userDict = [NSDictionary dictionaryWithObject:nameDict forKey:kNameKey]; - NSData *userJson = [NSJSONSerialization dataWithJSONObject:userDict - options:NSJSONWritingPrettyPrinted - error:error]; + NSData *userJson = [NSJSONSerialization dataWithJSONObject:userDict options:0 error:error]; [queryItems addObject:[NSURLQueryItem queryItemWithName:kUserKey diff --git a/FirebaseAuth/Tests/Unit/FIRVerifyAssertionRequestTests.m b/FirebaseAuth/Tests/Unit/FIRVerifyAssertionRequestTests.m index 16622521069..53a5188aabd 100644 --- a/FirebaseAuth/Tests/Unit/FIRVerifyAssertionRequestTests.m +++ b/FirebaseAuth/Tests/Unit/FIRVerifyAssertionRequestTests.m @@ -125,6 +125,21 @@ */ static NSString *const kAutoCreateKey = @"autoCreate"; +/** @var kUserKey + @brief The key for the "user" value in the request. + */ +static NSString *const kUserKey = @"user"; + +/** @var kFakeGivenName + @brief Fake given name used for testing the request. + */ +static NSString *const kFakeGivenName = @"Firstname"; + +/** @var kFakeFamilyName + @brief Fake family name used for testing the request. + */ +static NSString *const kFakeFamilyName = @"Lastname"; + /** @class FIRVerifyAssertionRequestTests @brief Tests for @c FIRVerifyAssertionReuqest */ @@ -225,6 +240,14 @@ - (void)testVerifyAssertionRequestOptionalFields { request.pendingToken = kTestPendingToken; request.providerOAuthTokenSecret = kTestProviderOAuthTokenSecret; request.autoCreate = NO; + NSPersonNameComponents *fullName = [[NSPersonNameComponents alloc] init]; + fullName.givenName = kFakeGivenName; + fullName.familyName = kFakeFamilyName; + request.fullName = fullName; + + NSString *userJSON = + [NSString stringWithFormat:@"{\"name\":{\"firstName\":\"%@\",\"lastName\":\"%@\"}}", + kFakeGivenName, kFakeFamilyName]; [FIRAuthBackend verifyAssertion:request @@ -238,6 +261,7 @@ - (void)testVerifyAssertionRequestOptionalFields { [NSURLQueryItem queryItemWithName:kProviderOAuthTokenSecretKey value:kTestProviderOAuthTokenSecret], [NSURLQueryItem queryItemWithName:kInputEmailKey value:kTestInputEmail], + [NSURLQueryItem queryItemWithName:kUserKey value:userJSON], ]; NSURLComponents *components = [[NSURLComponents alloc] init]; [components setQueryItems:queryItems];