aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--Example/Auth/Sample/MainViewController.m8
-rw-r--r--Example/Auth/SwiftSample/ViewController.swift4
-rw-r--r--Example/Auth/Tests/FIRAuthTests.m15
-rw-r--r--Firebase/Auth/Source/FIRAuth.m18
-rw-r--r--Firebase/Auth/Source/Public/FIRAuth.h13
5 files changed, 40 insertions, 18 deletions
diff --git a/Example/Auth/Sample/MainViewController.m b/Example/Auth/Sample/MainViewController.m
index 4c9ec13..0da28c8 100644
--- a/Example/Auth/Sample/MainViewController.m
+++ b/Example/Auth/Sample/MainViewController.m
@@ -1884,7 +1884,8 @@ static NSDictionary<NSString *, NSString *> *parseURL(NSString *urlString) {
callback:(nullable FIRAuthResultCallback)callback {
[[AppManager auth] createUserWithEmail:email
password:password
- completion:^(FIRUser *_Nullable user, NSError *_Nullable error) {
+ completion:^(FIRAuthDataResult *_Nullable result,
+ NSError *_Nullable error) {
if (error) {
[self logFailure:@"sign-up with Email/Password failed" error:error];
if (callback) {
@@ -1893,7 +1894,7 @@ static NSDictionary<NSString *, NSString *> *parseURL(NSString *urlString) {
} else {
[self logSuccess:@"sign-up with Email/Password succeeded."];
if (callback) {
- callback(user, nil);
+ callback(result.user, nil);
}
}
[self showTypicalUIForUserUpdateResultsWithTitle:@"Sign-In" error:error];
@@ -2803,7 +2804,8 @@ static NSDictionary<NSString *, NSString *> *parseURL(NSString *urlString) {
[self showSpinner:^{
[[AppManager auth] createUserWithEmail:email
password:password
- completion:^(FIRUser *_Nullable user, NSError *_Nullable error) {
+ completion:^(FIRAuthDataResult *_Nullable result,
+ NSError *_Nullable error) {
if (error) {
[self logFailure:@"create user failed" error:error];
} else {
diff --git a/Example/Auth/SwiftSample/ViewController.swift b/Example/Auth/SwiftSample/ViewController.swift
index d902b38..05b0dd2 100644
--- a/Example/Auth/SwiftSample/ViewController.swift
+++ b/Example/Auth/SwiftSample/ViewController.swift
@@ -232,9 +232,9 @@ final class ViewController: UIViewController, UITextFieldDelegate, AuthUIDelegat
}
case .createUser:
Auth.auth().createUser(withEmail: emailField.text!, password: passwordField.text!) {
- user, error in
+ result, error in
self.ifNoError(error) {
- self.showAlert(title: "Signed In With Credential", message: user?.textDescription)
+ self.showAlert(title: "Signed In With Credential", message: result?.user.textDescription)
}
}
case .signOut:
diff --git a/Example/Auth/Tests/FIRAuthTests.m b/Example/Auth/Tests/FIRAuthTests.m
index d238057..34c0499 100644
--- a/Example/Auth/Tests/FIRAuthTests.m
+++ b/Example/Auth/Tests/FIRAuthTests.m
@@ -1592,9 +1592,9 @@ static const NSTimeInterval kWaitInterval = .5;
[[FIRAuth auth] signOut:NULL];
[[FIRAuth auth] createUserWithEmail:kEmail
password:kFakePassword
- completion:^(FIRUser *_Nullable user, NSError *_Nullable error) {
+ completion:^(FIRAuthDataResult *_Nullable result, NSError *_Nullable error) {
XCTAssertTrue([NSThread isMainThread]);
- [self assertUser:user];
+ [self assertUser:result.user];
XCTAssertNil(error);
[expectation fulfill];
}];
@@ -1614,9 +1614,10 @@ static const NSTimeInterval kWaitInterval = .5;
[[FIRAuth auth] signOut:NULL];
[[FIRAuth auth] createUserWithEmail:kEmail
password:kFakePassword
- completion:^(FIRUser *_Nullable user, NSError *_Nullable error) {
+ completion:^(FIRAuthDataResult *_Nullable result,
+ NSError *_Nullable error) {
XCTAssertTrue([NSThread isMainThread]);
- XCTAssertNil(user);
+ XCTAssertNil(result.user);
XCTAssertEqual(error.code, FIRAuthErrorCodeWeakPassword);
XCTAssertNotNil(error.userInfo[NSLocalizedDescriptionKey]);
XCTAssertEqualObjects(error.userInfo[NSLocalizedFailureReasonErrorKey], reason);
@@ -1700,7 +1701,8 @@ static const NSTimeInterval kWaitInterval = .5;
[[FIRAuth auth] signOut:NULL];
[[FIRAuth auth] createUserWithEmail:kEmail
password:@""
- completion:^(FIRUser *_Nullable user, NSError *_Nullable error) {
+ completion:^(FIRAuthDataResult *_Nullable result,
+ NSError *_Nullable error) {
XCTAssertTrue([NSThread isMainThread]);
XCTAssertEqual(error.code, FIRAuthErrorCodeWeakPassword);
[expectation fulfill];
@@ -1719,7 +1721,8 @@ static const NSTimeInterval kWaitInterval = .5;
[[FIRAuth auth] signOut:NULL];
[[FIRAuth auth] createUserWithEmail:@""
password:kFakePassword
- completion:^(FIRUser *_Nullable user, NSError *_Nullable error) {
+ completion:^(FIRAuthDataResult *_Nullable result,
+ NSError *_Nullable error) {
XCTAssertTrue([NSThread isMainThread]);
XCTAssertEqual(error.code, FIRAuthErrorCodeMissingEmail);
[expectation fulfill];
diff --git a/Firebase/Auth/Source/FIRAuth.m b/Firebase/Auth/Source/FIRAuth.m
index 5ec9a6f..82a7c02 100644
--- a/Firebase/Auth/Source/FIRAuth.m
+++ b/Firebase/Auth/Source/FIRAuth.m
@@ -946,10 +946,10 @@ static NSMutableDictionary *gKeychainServiceNameForAppName;
- (void)createUserWithEmail:(NSString *)email
password:(NSString *)password
- completion:(nullable FIRAuthResultCallback)completion {
+ completion:(nullable FIRAuthDataResultCallback)completion {
dispatch_async(FIRAuthGlobalWorkQueue(), ^{
- FIRAuthResultCallback decoratedCallback =
- [self signInFlowAuthResultCallbackByDecoratingCallback:completion];
+ FIRAuthDataResultCallback decoratedCallback =
+ [self signInFlowAuthDataResultCallbackByDecoratingCallback:completion];
[self internalCreateUserWithEmail:email
password:password
completion:^(FIRSignUpNewUserResponse *_Nullable response,
@@ -962,7 +962,17 @@ static NSMutableDictionary *gKeychainServiceNameForAppName;
accessTokenExpirationDate:response.approximateExpirationDate
refreshToken:response.refreshToken
anonymous:NO
- callback:decoratedCallback];
+ callback:^(FIRUser *_Nullable user, NSError *_Nullable error) {
+ FIRAdditionalUserInfo *additionalUserInfo =
+ [[FIRAdditionalUserInfo alloc] initWithProviderID:FIREmailAuthProviderID
+ profile:nil
+ username:nil
+ isNewUser:YES];
+ FIRAuthDataResult *authDataResult =
+ [[FIRAuthDataResult alloc] initWithUser:user
+ additionalUserInfo:additionalUserInfo];
+ decoratedCallback(authDataResult, nil);
+ }];
}];
});
}
diff --git a/Firebase/Auth/Source/Public/FIRAuth.h b/Firebase/Auth/Source/Public/FIRAuth.h
index c20ecbe..c262c49 100644
--- a/Firebase/Auth/Source/Public/FIRAuth.h
+++ b/Firebase/Auth/Source/Public/FIRAuth.h
@@ -639,10 +639,11 @@ NS_SWIFT_NAME(Auth)
*/
- (void)createUserWithEmail:(NSString *)email
password:(NSString *)password
- completion:(nullable FIRAuthResultCallback)completion;
+ completion:(nullable FIRAuthDataResultCallback)completion;
/** @fn createUserAndRetrieveDataWithEmail:password:completion:
- @brief Creates and, on success, signs in a user with the given email address and password.
+ @brief Please use `createUserAndRetrieveDataWithEmail:password:completion:` or
+ `createUser(withEmail:password:completion:)` for Swift instead.
@param email The user's email address.
@param password The user's desired password.
@@ -669,7 +670,13 @@ NS_SWIFT_NAME(Auth)
*/
- (void)createUserAndRetrieveDataWithEmail:(NSString *)email
password:(NSString *)password
- completion:(nullable FIRAuthDataResultCallback)completion;
+ completion:(nullable FIRAuthDataResultCallback)completion
+ DEPRECATED_MSG_ATTRIBUTE(
+ "createUserAndRetrieveDataWithEmail:password:completion: is"
+ " deprecated. Please use"
+ " createUserWithEmail:password:completion: for Objective-C or"
+ " createUser(withEmail:password:completion:) for Swift"
+ " instead.");
/** @fn confirmPasswordResetWithCode:newPassword:completion:
@brief Resets the password given a code sent to the user outside of the app and a new password