@@ -71,6 +71,22 @@ function testHandleFederatedLinking() {
71
71
}
72
72
73
73
74
+ function testHandleFederatedLinking_githubLoginHint ( ) {
75
+ // The login custom parameter should automatically be passed to the
76
+ // github.com provider.
77
+ var expectedProvider =
78
+ getExpectedProviderWithCustomParameters (
79
+ 'github.com' , { 'login' : federatedAccount . getEmail ( ) } ) ;
80
+ setPendingEmailCredentials ( ) ;
81
+ firebaseui . auth . widget . handler . handleFederatedLinking (
82
+ app , container , federatedAccount . getEmail ( ) , 'github.com' ) ;
83
+ assertFederatedLinkingPage ( federatedAccount . getEmail ( ) ) ;
84
+ submitForm ( ) ;
85
+ testAuth . assertSignInWithRedirect ( [ expectedProvider ] ) ;
86
+ return testAuth . process ( ) ;
87
+ }
88
+
89
+
74
90
function testHandleFederatedLinking_genericLoginHint ( ) {
75
91
// Since Microsoft's signInOptions include a loginHintKey definition,
76
92
// a login_hint should be set in the customParameters.
@@ -88,13 +104,13 @@ function testHandleFederatedLinking_genericLoginHint() {
88
104
89
105
90
106
function testHandleFederatedLinking_noLoginHint ( ) {
91
- // Since GitHub doesn't support sending a login_hint,
107
+ // Since Facebook doesn't support sending a login_hint,
92
108
// it should not be set in the customParameters.
93
109
var expectedProvider =
94
- getExpectedProviderWithCustomParameters ( 'github .com' ) ;
110
+ getExpectedProviderWithCustomParameters ( 'facebook .com' ) ;
95
111
setPendingEmailCredentials ( ) ;
96
112
firebaseui . auth . widget . handler . handleFederatedLinking (
97
- app , container , federatedAccount . getEmail ( ) , 'github .com' ) ;
113
+ app , container , federatedAccount . getEmail ( ) , 'facebook .com' ) ;
98
114
assertFederatedLinkingPage ( federatedAccount . getEmail ( ) ) ;
99
115
submitForm ( ) ;
100
116
testAuth . assertSignInWithRedirect ( [ expectedProvider ] ) ;
@@ -128,18 +144,18 @@ function testHandleFederatedLinking_genericLoginHint_upgradeAnonymous() {
128
144
129
145
130
146
function testHandleFederatedLinking_noLoginHint_upgradeAnonymous ( ) {
131
- // Since GitHub doesn't support sending a login_hint,
147
+ // Since Facebook doesn't support sending a login_hint,
132
148
// it should not be set in the customParameters.
133
149
var expectedProvider =
134
- getExpectedProviderWithCustomParameters ( 'github .com' ) ;
150
+ getExpectedProviderWithCustomParameters ( 'facebook .com' ) ;
135
151
// Simulate pending email credentials.
136
152
setPendingEmailCredentials ( ) ;
137
153
// Enable anonymous user upgrade.
138
154
app . updateConfig ( 'autoUpgradeAnonymousUsers' , true ) ;
139
155
// Simulate anonymous user signed in.
140
156
externalAuth . setUser ( anonymousUser ) ;
141
157
firebaseui . auth . widget . handler . handleFederatedLinking (
142
- app , container , federatedAccount . getEmail ( ) , 'github .com' ) ;
158
+ app , container , federatedAccount . getEmail ( ) , 'facebook .com' ) ;
143
159
assertFederatedLinkingPage ( federatedAccount . getEmail ( ) ) ;
144
160
submitForm ( ) ;
145
161
// Trigger initial onAuthStateChanged listener.
@@ -221,16 +237,16 @@ function testHandleFederatedLinking_noLoginHint_cordova() {
221
237
// Simulate a Cordova environment.
222
238
simulateCordovaEnvironment ( ) ;
223
239
var githubCred = createMockCredential ( {
224
- 'providerId' : 'github .com' ,
240
+ 'providerId' : 'facebook .com' ,
225
241
'accessToken' : 'ACCESS_TOKEN'
226
242
} ) ;
227
- // Since GitHub doesn't support sending a login_hint,
243
+ // Since Facebook doesn't support sending a login_hint,
228
244
// it should not be set in the customParameters.
229
245
var expectedProvider =
230
- getExpectedProviderWithCustomParameters ( 'github .com' ) ;
246
+ getExpectedProviderWithCustomParameters ( 'facebook .com' ) ;
231
247
setPendingEmailCredentials ( ) ;
232
248
firebaseui . auth . widget . handler . handleFederatedLinking (
233
- app , container , federatedAccount . getEmail ( ) , 'github .com' ) ;
249
+ app , container , federatedAccount . getEmail ( ) , 'facebook .com' ) ;
234
250
assertFederatedLinkingPage ( federatedAccount . getEmail ( ) ) ;
235
251
submitForm ( ) ;
236
252
testAuth . assertSignInWithRedirect ( [ expectedProvider ] ) ;
@@ -253,7 +269,7 @@ function testHandleFederatedLinking_noLoginHint_cordova() {
253
269
'user' : testAuth . currentUser ,
254
270
'credential' : credential ,
255
271
'operationType' : 'link' ,
256
- 'additionalUserInfo' : { 'providerId' : 'facebook .com' , 'isNewUser' : false }
272
+ 'additionalUserInfo' : { 'providerId' : 'github .com' , 'isNewUser' : false }
257
273
} ;
258
274
// Saved pending credential loaded from storage and linked to current user.
259
275
testAuth . currentUser . assertLinkWithCredential (
@@ -284,13 +300,13 @@ function testHandleFederatedLinking_noLoginHint_error_cordova() {
284
300
// Test federated linking error flow in a Cordova environment.
285
301
// Simulate a Cordova environment.
286
302
simulateCordovaEnvironment ( ) ;
287
- // Since GitHub doesn't support sending a login_hint,
303
+ // Since Facebook doesn't support sending a login_hint,
288
304
// it should not be set in the customParameters.
289
305
var expectedProvider =
290
- getExpectedProviderWithCustomParameters ( 'github .com' ) ;
306
+ getExpectedProviderWithCustomParameters ( 'facebook .com' ) ;
291
307
setPendingEmailCredentials ( ) ;
292
308
firebaseui . auth . widget . handler . handleFederatedLinking (
293
- app , container , federatedAccount . getEmail ( ) , 'github .com' ) ;
309
+ app , container , federatedAccount . getEmail ( ) , 'facebook .com' ) ;
294
310
assertFederatedLinkingPage ( federatedAccount . getEmail ( ) ) ;
295
311
submitForm ( ) ;
296
312
testAuth . assertSignInWithRedirect ( [ expectedProvider ] ) ;
0 commit comments