Merge "Add UI metrics for granting admin rights from User Switcher"
This commit is contained in:
committed by
Android (Google) Code Review
commit
2a06ccdfd5
@@ -263,4 +263,11 @@ public class ShadowUserManager extends org.robolectric.shadows.ShadowUserManager
|
||||
}
|
||||
return isSuccess;
|
||||
}
|
||||
|
||||
@Implementation
|
||||
protected void setUserAdmin(@UserIdInt int userId) {
|
||||
for (int i = 0; i < mUserProfileInfos.size(); i++) {
|
||||
mUserProfileInfos.get(i).flags |= UserInfo.FLAG_ADMIN;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -725,6 +725,32 @@ public class UserDetailsSettingsTest {
|
||||
verify(mFragment).removePreference(KEY_GRANT_ADMIN);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onPreferenceChange_grantAdminClicked_isNotAdmin_shouldLogGrantAdmin() {
|
||||
setupSelectedUser();
|
||||
mFragment.mUserInfo = mUserInfo;
|
||||
mFragment.mGrantAdminPref = mGrantAdminPref;
|
||||
doNothing().when(mFragment).showDialog(anyInt());
|
||||
|
||||
mFragment.onPreferenceChange(mGrantAdminPref, true);
|
||||
|
||||
verify(mMetricsFeatureProvider).action(any(),
|
||||
eq(SettingsEnums.ACTION_GRANT_ADMIN_FROM_SETTINGS));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onPreferenceChange_grantAdminClicked_isAdmin_shouldLogRevokeAdmin() {
|
||||
setupSelectedAdminUser();
|
||||
mFragment.mUserInfo = mUserInfo;
|
||||
mFragment.mGrantAdminPref = mGrantAdminPref;
|
||||
doNothing().when(mFragment).showDialog(anyInt());
|
||||
|
||||
mFragment.onPreferenceChange(mGrantAdminPref, false);
|
||||
|
||||
verify(mMetricsFeatureProvider).action(any(),
|
||||
eq(SettingsEnums.ACTION_REVOKE_ADMIN_FROM_SETTINGS));
|
||||
}
|
||||
|
||||
private void setupSelectedUser() {
|
||||
mArguments.putInt("user_id", 1);
|
||||
mUserInfo = new UserInfo(1, "Tom", null,
|
||||
@@ -743,6 +769,15 @@ public class UserDetailsSettingsTest {
|
||||
mUserManager.addProfile(mUserInfo);
|
||||
}
|
||||
|
||||
private void setupSelectedAdminUser() {
|
||||
mArguments.putInt("user_id", 12);
|
||||
mUserInfo = new UserInfo(12, "Andy", null,
|
||||
UserInfo.FLAG_FULL | UserInfo.FLAG_INITIALIZED | UserInfo.FLAG_ADMIN,
|
||||
UserManager.USER_TYPE_FULL_SECONDARY);
|
||||
|
||||
mUserManager.addProfile(mUserInfo);
|
||||
}
|
||||
|
||||
private void setupSelectedGuest() {
|
||||
mArguments.putInt("user_id", 23);
|
||||
mUserInfo = new UserInfo(23, "Guest", null,
|
||||
|
Reference in New Issue
Block a user