Skip to content

Commit a95d541

Browse files
authored
Merge pull request #293 from samtstern/master
Version 0.5.3
2 parents e857f8b + fb5f31b commit a95d541

File tree

10 files changed

+69
-30
lines changed

10 files changed

+69
-30
lines changed

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,13 @@ libraries.
2828
```groovy
2929
dependencies {
3030
// Single target that includes all FirebaseUI libraries
31-
compile 'com.firebaseui:firebase-ui:0.5.2'
31+
compile 'com.firebaseui:firebase-ui:0.5.3'
3232
3333
// FirebaseUI Database only
34-
compile 'com.firebaseui:firebase-ui-database:0.5.2'
34+
compile 'com.firebaseui:firebase-ui-database:0.5.3'
3535
3636
// FirebaseUI Auth only
37-
compile 'com.firebaseui:firebase-ui-auth:0.5.2'
37+
compile 'com.firebaseui:firebase-ui-auth:0.5.3'
3838
}
3939
```
4040

@@ -61,7 +61,7 @@ For convenience, here are some examples:
6161

6262
| FirebaseUI Version | Firebase/Play Services Version |
6363
|--------------------|--------------------------------|
64-
| 0.5.2 | 9.4.0 |
64+
| 0.5.3 | 9.4.0 |
6565
| 0.4.4 | 9.4.0 |
6666
| 0.4.3 | 9.2.1 |
6767
| 0.4.2 | 9.2.0 |

auth/README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ Gradle, add:
4444
```groovy
4545
dependencies {
4646
// ...
47-
compile 'com.firebaseui:firebase-ui-auth:0.5.2'
47+
compile 'com.firebaseui:firebase-ui-auth:0.5.3'
4848
}
4949
```
5050

@@ -54,7 +54,7 @@ If instead your project uses Maven, add:
5454
<dependency>
5555
<groupId>com.firebaseui</groupId>
5656
<artifactId>firebase-ui-auth</artifactId>
57-
<version>0.5.2</version>
57+
<version>0.5.3</version>
5858
</dependency>
5959
```
6060

@@ -325,10 +325,10 @@ would like to request additional scopes from the user, add a string array resour
325325
For a list of all scopes, see:
326326
https://developers.google.com/identity/protocols/googlescopes
327327
-->
328-
<array name="google_permissions">
328+
<string-array name="google_permissions">
329329
<!-- Request permission to read the user's Google Drive files -->
330330
<item>https://www.googleapis.com/auth/drive.readonly</item>
331-
</array>
331+
</string-array>
332332
```
333333

334334

@@ -344,8 +344,8 @@ Facebook Login. If you would like to override these scopes, a string array reso
344344
https://developers.facebook.com/docs/facebook-login/android
345345
https://developers.facebook.com/docs/facebook-login/permissions
346346
-->
347-
<array name="facebook_permissions">
347+
<string-array name="facebook_permissions">
348348
<!-- Request permission to know the user's birthday -->
349349
<item>user_birthday</item>
350-
</array>
350+
</string-array>
351351
```

auth/src/main/java/com/firebase/ui/auth/provider/GoogleProvider.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ public GoogleProvider(FragmentActivity activity, IDPProviderParcel parcel, @Null
6262
.requestIdToken(mClientId);
6363

6464
// Add additional scopes
65-
String[] extraScopes = getExtraScopes();
65+
String[] extraScopes = mActivity.getResources().getStringArray(R.array.google_permissions);
6666
for (String scopeString : extraScopes) {
6767
builder.requestScopes(new Scope(scopeString));
6868
}
@@ -154,9 +154,5 @@ public void onClick(View view) {
154154
public void onConnectionFailed(@NonNull ConnectionResult connectionResult) {
155155
Log.w(TAG, "onConnectionFailed:" + connectionResult);
156156
}
157-
158-
private String[] getExtraScopes() {
159-
return mActivity.getResources().getStringArray(R.array.google_permissions);
160-
}
161157
}
162158

auth/src/main/res/values/config.xml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@
2929
https://developers.facebook.com/docs/facebook-login/android
3030
https://developers.facebook.com/docs/facebook-login/permissions
3131
-->
32-
<array name="facebook_permissions">
33-
</array>
32+
<string-array name="facebook_permissions">
33+
</string-array>
3434

3535
<!--
3636
The additional Google scopes that this application will request from the user. Users of
@@ -43,8 +43,8 @@
4343
For a list of all scopes, see:
4444
https://developers.google.com/identity/protocols/googlescopes
4545
-->
46-
<array name="google_permissions">
47-
</array>
46+
<string-array name="google_permissions">
47+
</string-array>
4848

4949

5050
<!--

auth/src/test/java/com/firebase/ui/auth/test_helpers/CustomRobolectricGradleTestRunner.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414

1515
package com.firebase.ui.auth.test_helpers;
1616

17+
import com.facebook.login.LoginManager;
1718
import com.firebase.ui.auth.provider.FacebookProvider;
1819
import com.firebase.ui.auth.provider.GoogleProvider;
1920
import com.firebase.ui.auth.ui.ActivityHelper;
@@ -34,12 +35,15 @@ public CustomRobolectricGradleTestRunner(Class<?> klass) throws InitializationEr
3435
@Override
3536
public InstrumentationConfiguration createClassLoaderConfig(Config config) {
3637
InstrumentationConfiguration.Builder builder = InstrumentationConfiguration.newBuilder();
38+
3739
builder.addInstrumentedClass(FirebaseAuthWrapperFactory.class.getName());
3840
builder.addInstrumentedClass(CredentialsAPI.class.getName());
3941
builder.addInstrumentedClass(ActivityHelper.class.getName());
4042
builder.addInstrumentedClass(FirebaseAuthWrapperImpl.class.getName());
4143
builder.addInstrumentedClass(FacebookProvider.class.getName());
4244
builder.addInstrumentedClass(GoogleProvider.class.getName());
45+
builder.addInstrumentedClass(LoginManager.class.getName());
46+
4347
return builder.build();
4448
}
4549
}

auth/src/test/java/com/firebase/ui/auth/test_helpers/FacebookProviderShadow.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,10 @@
1414

1515
package com.firebase.ui.auth.test_helpers;
1616

17-
import static org.mockito.Mockito.mock;
18-
import static org.mockito.Mockito.when;
19-
2017
import android.app.Activity;
2118
import android.os.Bundle;
2219

20+
import com.facebook.login.LoginResult;
2321
import com.firebase.ui.auth.provider.FacebookProvider;
2422
import com.firebase.ui.auth.provider.IDPProvider;
2523
import com.firebase.ui.auth.provider.IDPProviderParcel;
@@ -29,6 +27,9 @@
2927
import org.robolectric.annotation.Implementation;
3028
import org.robolectric.annotation.Implements;
3129

30+
import static org.mockito.Mockito.mock;
31+
import static org.mockito.Mockito.when;
32+
3233

3334
@Implements(FacebookProvider.class)
3435
public class FacebookProviderShadow {
@@ -58,7 +59,7 @@ public void setAuthenticationCallback(IDPProvider.IDPCallback idpCallback) {
5859
}
5960

6061
@Implementation
61-
public void startLogin(Activity activity) {
62+
public void onSuccess(final LoginResult loginResult) {
6263
mCallback.onSuccess(mMockIdpResponse);
6364
}
6465
}

auth/src/test/java/com/firebase/ui/auth/test_helpers/GoogleProviderShadow.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -62,9 +62,4 @@ public void setAuthenticationCallback(IDPProvider.IDPCallback idpCallback) {
6262
public void startLogin(Activity activity) {
6363
mCallback.onSuccess(mMockIdpResponse);
6464
}
65-
66-
@Implementation
67-
public String[] getExtraScopes() {
68-
return new String[]{};
69-
}
7065
}
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
package com.firebase.ui.auth.test_helpers;
2+
3+
import android.app.Activity;
4+
5+
import com.facebook.CallbackManager;
6+
import com.facebook.FacebookCallback;
7+
import com.facebook.login.LoginManager;
8+
import com.facebook.login.LoginResult;
9+
10+
import org.robolectric.annotation.Implementation;
11+
import org.robolectric.annotation.Implements;
12+
13+
import java.util.Collection;
14+
15+
/**
16+
* Shadow for Facebook SDK {@link LoginManager}.
17+
*/
18+
@Implements(LoginManager.class)
19+
public class LoginManagerShadow {
20+
21+
private FacebookCallback<LoginResult> mCallback;
22+
23+
@Implementation
24+
public void registerCallback(final CallbackManager callbackManager,
25+
final FacebookCallback<LoginResult> callback) {
26+
mCallback = callback;
27+
}
28+
29+
@Implementation
30+
public void logInWithReadPermissions(Activity activity, Collection<String> permissions) {
31+
// Check for minimum permission set
32+
if (!(permissions.contains("email") && permissions.contains("public_profile"))) {
33+
throw new IllegalArgumentException("Facebook permissions must contain email and " +
34+
"public_profile.");
35+
}
36+
37+
// Call back with success
38+
mCallback.onSuccess(null);
39+
}
40+
41+
}

auth/src/test/java/com/firebase/ui/auth/ui/idp/AuthMethodPickerActivityTest.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
import com.firebase.ui.auth.test_helpers.FakeAuthResult;
3030
import com.firebase.ui.auth.test_helpers.FirebaseAuthWrapperImplShadow;
3131
import com.firebase.ui.auth.test_helpers.GoogleProviderShadow;
32+
import com.firebase.ui.auth.test_helpers.LoginManagerShadow;
3233
import com.firebase.ui.auth.test_helpers.TestConstants;
3334
import com.firebase.ui.auth.test_helpers.TestHelper;
3435
import com.firebase.ui.auth.ui.ExtraConstants;
@@ -63,7 +64,8 @@
6364
shadows = {
6465
FirebaseAuthWrapperImplShadow.class,
6566
GoogleProviderShadow.class,
66-
FacebookProviderShadow.class
67+
FacebookProviderShadow.class,
68+
LoginManagerShadow.class
6769
}, sdk = 21)
6870
public class AuthMethodPickerActivityTest {
6971

common/constants.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ project.ext.support_library_version = '23.4.0'
33

44
project.ext.submodules = ['database', 'auth']
55
project.ext.group = "com.firebaseui"
6-
project.ext.version = '0.5.3-SNAPSHOT'
6+
project.ext.version = '0.5.3'
77
project.ext.pomdesc = 'Firebase UI Android'
88
project.ext.buildtools = '23.0.3'
99
project.ext.compileSdk = 23

0 commit comments

Comments
 (0)