Skip to content

Commit 2e7eecd

Browse files
author
renkelvin
authored
Fix recaptcha fall back tests (#11728)
1 parent 05b088d commit 2e7eecd

File tree

1 file changed

+50
-43
lines changed

1 file changed

+50
-43
lines changed

FirebaseAuth/Tests/Unit/FIRAuthTests.m

Lines changed: 50 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -695,7 +695,7 @@ - (void)testSignInWithEmailPasswordWithRecaptchaFallbackSuccess {
695695
id mockVerifier = OCMClassMock([FIRAuthRecaptchaVerifier class]);
696696
OCMStub([mockVerifier sharedRecaptchaVerifier:[FIRAuth auth]]).andReturn(mockVerifier);
697697
OCMExpect([mockVerifier enablementStatusForProvider:FIRAuthRecaptchaProviderPassword])
698-
.andReturn(YES);
698+
.andReturn(NO);
699699
FIRVerifyPasswordRequest *constRequestWithRecaptchaToken =
700700
[[FIRVerifyPasswordRequest alloc] initWithEmail:kEmail
701701
password:kFakePassword
@@ -714,10 +714,18 @@ - (void)testSignInWithEmailPasswordWithRecaptchaFallbackSuccess {
714714
XCTAssertEqualObjects(request.email, kEmail);
715715
XCTAssertEqualObjects(request.password, kFakePassword);
716716
XCTAssertTrue(request.returnSecureToken);
717+
NSError *underlyingError =
718+
[[NSError alloc] initWithDomain:FIRAuthErrorDomain
719+
code:FIRAuthErrorCodeInternalError
720+
userInfo:@{
721+
FIRAuthErrorUserInfoDeserializedResponseKey :
722+
@{@"message" : @"MISSING_RECAPTCHA_TOKEN"}
723+
}];
724+
NSError *error = [[NSError alloc] initWithDomain:FIRAuthErrorDomain
725+
code:FIRAuthErrorCodeInternalError
726+
userInfo:@{NSUnderlyingErrorKey : underlyingError}];
717727
dispatch_async(FIRAuthGlobalWorkQueue(), ^() {
718-
id mockVerifyPasswordResponse = OCMClassMock([FIRVerifyPasswordResponse class]);
719-
[self stubTokensWithMockResponse:mockVerifyPasswordResponse];
720-
callback(mockVerifyPasswordResponse, nil);
728+
callback(nil, error);
721729
});
722730
});
723731
OCMExpect([_mockBackend verifyPassword:[OCMArg any] callback:[OCMArg any]])
@@ -727,15 +735,10 @@ - (void)testSignInWithEmailPasswordWithRecaptchaFallbackSuccess {
727735
XCTAssertEqualObjects(request.email, kEmail);
728736
XCTAssertEqualObjects(request.password, kFakePassword);
729737
XCTAssertTrue(request.returnSecureToken);
730-
NSError *underlyingError =
731-
[[NSError alloc] initWithDomain:FIRAuthErrorDomain
732-
code:FIRAuthErrorCodeInternalError
733-
userInfo:@{NSUnderlyingErrorKey : @"MISSING_RECAPTCHA_TOKEN"}];
734-
NSError *error = [[NSError alloc] initWithDomain:FIRAuthErrorDomain
735-
code:FIRAuthErrorCodeInternalError
736-
userInfo:@{NSUnderlyingErrorKey : underlyingError}];
737738
dispatch_async(FIRAuthGlobalWorkQueue(), ^() {
738-
callback(nil, error);
739+
id mockVerifyPasswordResponse = OCMClassMock([FIRVerifyPasswordResponse class]);
740+
[self stubTokensWithMockResponse:mockVerifyPasswordResponse];
741+
callback(mockVerifyPasswordResponse, nil);
739742
});
740743
});
741744
[self expectGetAccountInfo];
@@ -1852,19 +1855,14 @@ - (void)testCreateUserWithEmailPasswordWithRecaptchaVerificationSuccess {
18521855
[self assertUser:[FIRAuth auth].currentUser];
18531856
}
18541857

1855-
/** @fn testCreateUserWithEmailPasswordWithRecaptchaVerificationFallbackSuccess
1858+
/** @fn testCreateUserWithEmailPasswordWithRecaptchaFallbackSuccess
18561859
@brief Tests the flow of a successful @c createUserWithEmail:password:completion: call.
18571860
*/
1858-
- (void)testCreateUserWithEmailPasswordWithRecaptchaVerificationFallbackSuccess {
1861+
- (void)testCreateUserWithEmailPasswordWithRecaptchaFallbackSuccess {
18591862
id mockVerifier = OCMClassMock([FIRAuthRecaptchaVerifier class]);
18601863
OCMStub([mockVerifier sharedRecaptchaVerifier:[FIRAuth auth]]).andReturn(mockVerifier);
18611864
OCMExpect([mockVerifier enablementStatusForProvider:FIRAuthRecaptchaProviderPassword])
1862-
.andReturn(YES);
1863-
FIRSignUpNewUserRequest *constRequest =
1864-
[[FIRSignUpNewUserRequest alloc] initWithEmail:kEmail
1865-
password:kFakePassword
1866-
displayName:kDisplayName
1867-
requestConfiguration:[FIRAuth auth].requestConfiguration];
1865+
.andReturn(NO);
18681866
FIRSignUpNewUserRequest *constRequestWithRecaptchaToken =
18691867
[[FIRSignUpNewUserRequest alloc] initWithEmail:kEmail
18701868
password:kFakePassword
@@ -1877,7 +1875,7 @@ - (void)testCreateUserWithEmailPasswordWithRecaptchaVerificationFallbackSuccess
18771875
provider:FIRAuthRecaptchaProviderPassword
18781876
action:FIRAuthRecaptchaActionSignUpPassword
18791877
completion:([OCMArg invokeBlockWithArgs:constRequestWithRecaptchaToken, nil])]);
1880-
OCMExpect([_mockBackend signUpNewUser:constRequest callback:[OCMArg any]])
1878+
OCMExpect([_mockBackend signUpNewUser:[OCMArg any] callback:[OCMArg any]])
18811879
.andCallBlock2(^(FIRSignUpNewUserRequest *_Nullable request,
18821880
FIRSignupNewUserCallback callback) {
18831881
XCTAssertEqualObjects(request.APIKey, kAPIKey);
@@ -1887,15 +1885,18 @@ - (void)testCreateUserWithEmailPasswordWithRecaptchaVerificationFallbackSuccess
18871885
NSError *underlyingError =
18881886
[[NSError alloc] initWithDomain:FIRAuthErrorDomain
18891887
code:FIRAuthErrorCodeInternalError
1890-
userInfo:@{NSUnderlyingErrorKey : @"MISSING_RECAPTCHA_TOKEN"}];
1888+
userInfo:@{
1889+
FIRAuthErrorUserInfoDeserializedResponseKey :
1890+
@{@"message" : @"MISSING_RECAPTCHA_TOKEN"}
1891+
}];
18911892
NSError *error = [[NSError alloc] initWithDomain:FIRAuthErrorDomain
18921893
code:FIRAuthErrorCodeInternalError
18931894
userInfo:@{NSUnderlyingErrorKey : underlyingError}];
18941895
dispatch_async(FIRAuthGlobalWorkQueue(), ^() {
18951896
callback(nil, error);
18961897
});
18971898
});
1898-
OCMExpect([_mockBackend signUpNewUser:constRequestWithRecaptchaToken callback:[OCMArg any]])
1899+
OCMExpect([_mockBackend signUpNewUser:[OCMArg any] callback:[OCMArg any]])
18991900
.andCallBlock2(
19001901
^(FIRSignUpNewUserRequest *_Nullable request, FIRSignupNewUserCallback callback) {
19011902
XCTAssertEqualObjects(request.APIKey, kAPIKey);
@@ -2131,7 +2132,7 @@ - (void)testSendPasswordResetEmailWithRecaptchaFallbackSuccess {
21312132
id mockVerifier = OCMClassMock([FIRAuthRecaptchaVerifier class]);
21322133
OCMStub([mockVerifier sharedRecaptchaVerifier:[FIRAuth auth]]).andReturn(mockVerifier);
21332134
OCMExpect([mockVerifier enablementStatusForProvider:FIRAuthRecaptchaProviderPassword])
2134-
.andReturn(YES);
2135+
.andReturn(NO);
21352136
FIRGetOOBConfirmationCodeRequest *constRequestWithRecaptchaToken =
21362137
[FIRGetOOBConfirmationCodeRequest
21372138
passwordResetRequestWithEmail:kEmail
@@ -2149,24 +2150,27 @@ - (void)testSendPasswordResetEmailWithRecaptchaFallbackSuccess {
21492150
FIRGetOOBConfirmationCodeResponseCallback callback) {
21502151
XCTAssertEqualObjects(request.APIKey, kAPIKey);
21512152
XCTAssertEqualObjects(request.email, kEmail);
2153+
NSError *underlyingError =
2154+
[[NSError alloc] initWithDomain:FIRAuthErrorDomain
2155+
code:FIRAuthErrorCodeInternalError
2156+
userInfo:@{
2157+
FIRAuthErrorUserInfoDeserializedResponseKey :
2158+
@{@"message" : @"MISSING_RECAPTCHA_TOKEN"}
2159+
}];
2160+
NSError *error = [[NSError alloc] initWithDomain:FIRAuthErrorDomain
2161+
code:FIRAuthErrorCodeInternalError
2162+
userInfo:@{NSUnderlyingErrorKey : underlyingError}];
21522163
dispatch_async(FIRAuthGlobalWorkQueue(), ^() {
2153-
callback([[FIRGetOOBConfirmationCodeResponse alloc] init], nil);
2164+
callback(nil, error);
21542165
});
21552166
});
21562167
OCMExpect([_mockBackend getOOBConfirmationCode:[OCMArg any] callback:[OCMArg any]])
21572168
.andCallBlock2(^(FIRGetOOBConfirmationCodeRequest *_Nullable request,
21582169
FIRGetOOBConfirmationCodeResponseCallback callback) {
21592170
XCTAssertEqualObjects(request.APIKey, kAPIKey);
21602171
XCTAssertEqualObjects(request.email, kEmail);
2161-
NSError *underlyingError =
2162-
[[NSError alloc] initWithDomain:FIRAuthErrorDomain
2163-
code:FIRAuthErrorCodeInternalError
2164-
userInfo:@{NSUnderlyingErrorKey : @"MISSING_RECAPTCHA_TOKEN"}];
2165-
NSError *error = [[NSError alloc] initWithDomain:FIRAuthErrorDomain
2166-
code:FIRAuthErrorCodeInternalError
2167-
userInfo:@{NSUnderlyingErrorKey : underlyingError}];
21682172
dispatch_async(FIRAuthGlobalWorkQueue(), ^() {
2169-
callback(nil, error);
2173+
callback([[FIRGetOOBConfirmationCodeResponse alloc] init], nil);
21702174
});
21712175
});
21722176
XCTestExpectation *expectation = [self expectationWithDescription:@"callback"];
@@ -2274,7 +2278,7 @@ - (void)testSendSignInLinkToEmailWithRecaptchaFallbackSuccess {
22742278
id mockVerifier = OCMClassMock([FIRAuthRecaptchaVerifier class]);
22752279
OCMStub([mockVerifier sharedRecaptchaVerifier:[FIRAuth auth]]).andReturn(mockVerifier);
22762280
OCMExpect([mockVerifier enablementStatusForProvider:FIRAuthRecaptchaProviderPassword])
2277-
.andReturn(YES);
2281+
.andReturn(NO);
22782282
FIRGetOOBConfirmationCodeRequest *constRequestWithRecaptchaToken =
22792283
[FIRGetOOBConfirmationCodeRequest
22802284
signInWithEmailLinkRequest:kEmail
@@ -2294,8 +2298,18 @@ - (void)testSendSignInLinkToEmailWithRecaptchaFallbackSuccess {
22942298
XCTAssertEqualObjects(request.email, kEmail);
22952299
XCTAssertEqualObjects(request.continueURL, kContinueURL);
22962300
XCTAssertTrue(request.handleCodeInApp);
2301+
NSError *underlyingError =
2302+
[[NSError alloc] initWithDomain:FIRAuthErrorDomain
2303+
code:FIRAuthErrorCodeInternalError
2304+
userInfo:@{
2305+
FIRAuthErrorUserInfoDeserializedResponseKey :
2306+
@{@"message" : @"MISSING_RECAPTCHA_TOKEN"}
2307+
}];
2308+
NSError *error = [[NSError alloc] initWithDomain:FIRAuthErrorDomain
2309+
code:FIRAuthErrorCodeInternalError
2310+
userInfo:@{NSUnderlyingErrorKey : underlyingError}];
22972311
dispatch_async(FIRAuthGlobalWorkQueue(), ^() {
2298-
callback([[FIRGetOOBConfirmationCodeResponse alloc] init], nil);
2312+
callback(nil, error);
22992313
});
23002314
});
23012315
OCMExpect([_mockBackend getOOBConfirmationCode:[OCMArg any] callback:[OCMArg any]])
@@ -2305,15 +2319,8 @@ - (void)testSendSignInLinkToEmailWithRecaptchaFallbackSuccess {
23052319
XCTAssertEqualObjects(request.email, kEmail);
23062320
XCTAssertEqualObjects(request.continueURL, kContinueURL);
23072321
XCTAssertTrue(request.handleCodeInApp);
2308-
NSError *underlyingError =
2309-
[[NSError alloc] initWithDomain:FIRAuthErrorDomain
2310-
code:FIRAuthErrorCodeInternalError
2311-
userInfo:@{NSUnderlyingErrorKey : @"MISSING_RECAPTCHA_TOKEN"}];
2312-
NSError *error = [[NSError alloc] initWithDomain:FIRAuthErrorDomain
2313-
code:FIRAuthErrorCodeInternalError
2314-
userInfo:@{NSUnderlyingErrorKey : underlyingError}];
23152322
dispatch_async(FIRAuthGlobalWorkQueue(), ^() {
2316-
callback(nil, error);
2323+
callback([[FIRGetOOBConfirmationCodeResponse alloc] init], nil);
23172324
});
23182325
});
23192326
XCTestExpectation *expectation = [self expectationWithDescription:@"callback"];

0 commit comments

Comments
 (0)