From 1a8399ffd02d4a5ab1eb3103f0ca8229d43d8708 Mon Sep 17 00:00:00 2001 From: Bartosz Fabianowski Date: Wed, 8 Mar 2017 14:01:26 +0100 Subject: [PATCH] Update layout and strings for DO Disclosures This CL updates the DO Disclosures page (aka "Enterprise Privacy") to incorporate UI layout and string changes proposed since implementation began. There are no logic changes. Test: make RunSettingsRoboTests Bug: 32692748 Change-Id: I6ae972e77bd90eb9c61d6a516046a6eb09981ad3 --- AndroidManifest.xml | 12 +- res/values/strings.xml | 135 +++++++++--------- res/xml/enterprise_privacy_settings.xml | 40 ++---- res/xml/security_settings_misc.xml | 6 + .../AdminActionPreferenceControllerBase.java | 2 +- ...dCameraPermissionPreferenceController.java | 5 +- ...cationPermissionsPreferenceController.java | 5 +- ...rophonePermissionPreferenceController.java | 5 +- ...edPermissionsPreferenceControllerBase.java | 10 +- ...aCertsCurrentUserPreferenceController.java | 6 +- ...rtsManagedProfilePreferenceController.java | 4 +- ...InstalledPackagesPreferenceController.java | 5 +- ...iseSetDefaultAppsPreferenceController.java | 5 +- ...ipeManagedProfilePreferenceController.java | 4 +- ...dPasswordWipePreferenceControllerBase.java | 10 +- ...rdWipePrimaryUserPreferenceController.java | 4 +- .../enterprise/ImePreferenceController.java | 4 +- ...InstalledPackagesPreferenceController.java | 12 +- ...minActionPreferenceControllerTestBase.java | 4 +- ...eraPermissionPreferenceControllerTest.java | 4 +- ...onPermissionsPreferenceControllerTest.java | 4 +- ...onePermissionPreferenceControllerTest.java | 4 +- ...rmissionsPreferenceControllerBaseTest.java | 5 +- ...rmissionsPreferenceControllerTestBase.java | 12 +- ...tsCurrentUserPreferenceControllerTest.java | 47 ++++-- ...anagedProfilePreferenceControllerTest.java | 27 +++- ...alledPackagesPreferenceControllerTest.java | 7 +- ...etDefaultAppsPreferenceControllerTest.java | 7 +- ...anagedProfilePreferenceControllerTest.java | 4 +- ...swordWipePreferenceControllerBaseTest.java | 4 +- ...swordWipePreferenceControllerTestBase.java | 11 +- ...pePrimaryUserPreferenceControllerTest.java | 4 +- .../ImePreferenceControllerTest.java | 6 +- ...alledPackagesPreferenceControllerTest.java | 26 ++-- 34 files changed, 235 insertions(+), 215 deletions(-) diff --git a/AndroidManifest.xml b/AndroidManifest.xml index b3db9328896..ef419e2a3c5 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -1506,19 +1506,13 @@ + android:label="@string/enterprise_privacy_settings_title" + android:taskAffinity="com.android.settings" + android:parentActivityName="Settings$SecuritySettingsActivity"> - - - - diff --git a/res/values/strings.xml b/res/values/strings.xml index 7716a4efc06..fd027bbdfdd 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -8114,64 +8114,58 @@ - - Privacy + + Device management + + View all settings applied by your admin - Privacy - - To provide access to your work data, your organization may change settings and install software on your device, which could cause some of your personal content to be visible to your admin. Contact your organization\'s admin for more details. - - What types of information can your organization see? - - What changes affect what your organization can see? - - What actions may impact your access to this device? + Device management + + To provide access to your work data, your organization may change settings and install software on your device. \n\nFor more details, contact your organization\'s admin. + + Types of information your organization can see + + Changes made by your organization\'s admin + + Your access to this device Data associated with your work account, such as email and calendar - - List of all apps on your device - - - List of all %d app on your device - List of all %d apps on your device + + List of apps on your device + + + %d app + %d apps + + + + %d app. Tap to view. + %d apps. Tap to view. - Usage (time spent and amount of data used) of each app on your device + Time and data spent in each app on your device - Traffic logs on your device + Network traffic logs on your device - Your most recent bug report + Most recent bug report - Your most recent security log - - Never - - - %d app installed by your admin - %d apps installed by your admin - - - - %d app allowed access to your location by your admin - %d apps allowed access to your location by your admin - - - - %d app allowed access to your microphone by your admin - %d apps allowed access to your microphone by your admin - - - - %d app allowed access to your camera by your admin - %d apps allowed access to your camera by your admin - - - - %d default app set by your admin - %d default apps set by your admin - + Most recent security log + + None + + Apps installed + + Apps allowed to access your location + + Apps allowed to access your microphone + + Apps allowed to access your camera + + Default apps set - Default keyboard set to %s by your admin + Default keyboard + + Set to %s Always-on VPN turned on @@ -8182,35 +8176,44 @@ Global HTTP proxy set - %d trusted CA certificate installed - %d trusted CA certificates installed + Trusted CA Certificate installed + Trusted CA Certificates installed - %d trusted CA certificate installed in the personal profile - %d trusted CA certificates installed in the personal profile + Trusted CA Certificate installed in the personal profile + Trusted CA Certificates installed in the personal profile + + + + %d certificate + %d certificates + + + + %d certificate. Tap to view. + %d certificates. Tap to view. - %d trusted CA certificate installed in the work profile - %d trusted CA certificates installed in the work profile + Trusted CA Certificate installed in the work profile + Trusted CA Certificates installed in the work profile - Admin can lock device and reset password + Admin can lock the device and reset password Admin can delete all device data - - - Admin set maximum password attempts to %d before deleting all device data - Admin set maximum password attempts to %d before deleting all device data - - - - Admin set maximum password attempts to %d before deleting work profile data - Admin set maximum password attempts to %d before deleting work profile data + + Failed password attempts before deleting all device data + + Failed password attempts before deleting work profile data + + + %d attempt + %d attempts - This device is managed. + This device is managed by your organization. This device is managed by %s. diff --git a/res/xml/enterprise_privacy_settings.xml b/res/xml/enterprise_privacy_settings.xml index 436c227123b..f08b9f21ed8 100644 --- a/res/xml/enterprise_privacy_settings.xml +++ b/res/xml/enterprise_privacy_settings.xml @@ -19,91 +19,75 @@ android:key="enterprise_privacy_settings" android:title="@string/enterprise_privacy_settings_title"> - - - @@ -111,20 +95,20 @@ + + diff --git a/res/xml/security_settings_misc.xml b/res/xml/security_settings_misc.xml index 04272df24cb..155f21a91a8 100644 --- a/res/xml/security_settings_misc.xml +++ b/res/xml/security_settings_misc.xml @@ -43,6 +43,12 @@ android:persistent="false" android:fragment="com.android.settings.DeviceAdminSettings"/> + + { - preference.setTitle(mContext.getResources().getQuantityString( - R.plurals.enterprise_privacy_number_installed_packages, num, num)); + if (num == 0) { + preference.setSummary(""); + } else { + preference.setSummary(mContext.getResources().getQuantityString( + R.plurals.enterprise_privacy_number_packages, num, num)); + } }); } @@ -50,6 +54,6 @@ public class InstalledPackagesPreferenceController extends PreferenceController @Override public String getPreferenceKey() { - return KEY_NUMBER_INSTALLED_PACKAGES; + return KEY_INSTALLED_PACKAGES; } } diff --git a/tests/robotests/src/com/android/settings/enterprise/AdminActionPreferenceControllerTestBase.java b/tests/robotests/src/com/android/settings/enterprise/AdminActionPreferenceControllerTestBase.java index 59043eda6e5..e9b9d86f482 100644 --- a/tests/robotests/src/com/android/settings/enterprise/AdminActionPreferenceControllerTestBase.java +++ b/tests/robotests/src/com/android/settings/enterprise/AdminActionPreferenceControllerTestBase.java @@ -59,12 +59,12 @@ public abstract class AdminActionPreferenceControllerTestBase { @Test public void testUpdateState() { final Preference preference = new Preference(mContext, null, 0, 0); - when(mContext.getString(R.string.enterprise_privacy_never)).thenReturn("Never"); + when(mContext.getString(R.string.enterprise_privacy_none)).thenReturn("None"); Settings.System.putString(mContext.getContentResolver(), Settings.System.TIME_12_24, "24"); setDate(null); mController.updateState(preference); - assertThat(preference.getSummary()).isEqualTo("Never"); + assertThat(preference.getSummary()).isEqualTo("None"); final Date date = new GregorianCalendar(2011 /* year */, 10 /* month */, 9 /* dayOfMonth */, 8 /* hourOfDay */, 7 /* minute */, 6 /* second */).getTime(); diff --git a/tests/robotests/src/com/android/settings/enterprise/AdminGrantedCameraPermissionPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/enterprise/AdminGrantedCameraPermissionPreferenceControllerTest.java index de248856fb0..6efccfcf9ba 100644 --- a/tests/robotests/src/com/android/settings/enterprise/AdminGrantedCameraPermissionPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/enterprise/AdminGrantedCameraPermissionPreferenceControllerTest.java @@ -18,7 +18,6 @@ package com.android.settings.enterprise; import android.Manifest; -import com.android.settings.R; import com.android.settings.SettingsRobolectricTestRunner; import com.android.settings.TestConfig; import org.junit.runner.RunWith; @@ -34,8 +33,7 @@ public final class AdminGrantedCameraPermissionPreferenceControllerTest extends public AdminGrantedCameraPermissionPreferenceControllerTest() { super("enterprise_privacy_number_camera_access_packages", - new String[] {Manifest.permission.CAMERA}, - R.plurals.enterprise_privacy_number_camera_access_packages); + new String[] {Manifest.permission.CAMERA}); } @Override diff --git a/tests/robotests/src/com/android/settings/enterprise/AdminGrantedLocationPermissionsPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/enterprise/AdminGrantedLocationPermissionsPreferenceControllerTest.java index 1c6f91d48ab..a23ad8bfba3 100644 --- a/tests/robotests/src/com/android/settings/enterprise/AdminGrantedLocationPermissionsPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/enterprise/AdminGrantedLocationPermissionsPreferenceControllerTest.java @@ -18,7 +18,6 @@ package com.android.settings.enterprise; import android.Manifest; -import com.android.settings.R; import com.android.settings.SettingsRobolectricTestRunner; import com.android.settings.TestConfig; import org.junit.runner.RunWith; @@ -35,8 +34,7 @@ public final class AdminGrantedLocationPermissionsPreferenceControllerTest exten public AdminGrantedLocationPermissionsPreferenceControllerTest() { super("enterprise_privacy_number_location_access_packages", new String[] {Manifest.permission.ACCESS_COARSE_LOCATION, - Manifest.permission.ACCESS_FINE_LOCATION}, - R.plurals.enterprise_privacy_number_location_access_packages); + Manifest.permission.ACCESS_FINE_LOCATION}); } @Override diff --git a/tests/robotests/src/com/android/settings/enterprise/AdminGrantedMicrophonePermissionPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/enterprise/AdminGrantedMicrophonePermissionPreferenceControllerTest.java index bcaf63fd0da..39a715f66dc 100644 --- a/tests/robotests/src/com/android/settings/enterprise/AdminGrantedMicrophonePermissionPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/enterprise/AdminGrantedMicrophonePermissionPreferenceControllerTest.java @@ -18,7 +18,6 @@ package com.android.settings.enterprise; import android.Manifest; -import com.android.settings.R; import com.android.settings.SettingsRobolectricTestRunner; import com.android.settings.TestConfig; import org.junit.runner.RunWith; @@ -34,8 +33,7 @@ public final class AdminGrantedMicrophonePermissionPreferenceControllerTest exte public AdminGrantedMicrophonePermissionPreferenceControllerTest() { super("enterprise_privacy_number_microphone_access_packages", - new String[] {Manifest.permission.RECORD_AUDIO}, - R.plurals.enterprise_privacy_number_microphone_access_packages); + new String[] {Manifest.permission.RECORD_AUDIO}); } @Override diff --git a/tests/robotests/src/com/android/settings/enterprise/AdminGrantedPermissionsPreferenceControllerBaseTest.java b/tests/robotests/src/com/android/settings/enterprise/AdminGrantedPermissionsPreferenceControllerBaseTest.java index 2bebbf07537..1f52b0ed1a9 100644 --- a/tests/robotests/src/com/android/settings/enterprise/AdminGrantedPermissionsPreferenceControllerBaseTest.java +++ b/tests/robotests/src/com/android/settings/enterprise/AdminGrantedPermissionsPreferenceControllerBaseTest.java @@ -30,7 +30,7 @@ public final class AdminGrantedPermissionsPreferenceControllerBaseTest extends AdminGrantedPermissionsPreferenceControllerTestBase { public AdminGrantedPermissionsPreferenceControllerBaseTest() { - super(null, new String[] {"some.permission"}, 123 /* resourceStringId */); + super(null, new String[] {"some.permission"}); } @Override @@ -43,8 +43,7 @@ public final class AdminGrantedPermissionsPreferenceControllerBaseTest extends AdminGrantedPermissionsPreferenceControllerBase { AdminGrantedPermissionsPreferenceControllerBaseTestable() { - super(AdminGrantedPermissionsPreferenceControllerBaseTest.this.mContext, mPermissions, - mStringResourceId); + super(AdminGrantedPermissionsPreferenceControllerBaseTest.this.mContext, mPermissions); } @Override diff --git a/tests/robotests/src/com/android/settings/enterprise/AdminGrantedPermissionsPreferenceControllerTestBase.java b/tests/robotests/src/com/android/settings/enterprise/AdminGrantedPermissionsPreferenceControllerTestBase.java index 68ded374a5c..821fb342cf3 100644 --- a/tests/robotests/src/com/android/settings/enterprise/AdminGrantedPermissionsPreferenceControllerTestBase.java +++ b/tests/robotests/src/com/android/settings/enterprise/AdminGrantedPermissionsPreferenceControllerTestBase.java @@ -20,6 +20,7 @@ import android.content.Context; import android.content.res.Resources; import android.support.v7.preference.Preference; +import com.android.settings.R; import com.android.settings.applications.ApplicationFeatureProvider; import com.android.settings.testutils.FakeFeatureFactory; @@ -44,7 +45,6 @@ public abstract class AdminGrantedPermissionsPreferenceControllerTestBase { protected final String mKey; protected final String[] mPermissions; - protected final int mStringResourceId; @Mock(answer = Answers.RETURNS_DEEP_STUBS) protected Context mContext; @@ -52,11 +52,9 @@ public abstract class AdminGrantedPermissionsPreferenceControllerTestBase { protected AdminGrantedPermissionsPreferenceControllerBase mController; - public AdminGrantedPermissionsPreferenceControllerTestBase(String key, String[] permissions, - int stringResourceId) { + public AdminGrantedPermissionsPreferenceControllerTestBase(String key, String[] permissions) { mKey = key; mPermissions = permissions; - mStringResourceId = stringResourceId; } @Before @@ -83,10 +81,10 @@ public abstract class AdminGrantedPermissionsPreferenceControllerTestBase { preference.setVisible(false); setNumberOfPackagesWithAdminGrantedPermissions(20); - when(mContext.getResources().getQuantityString(mStringResourceId, 20, 20)) - .thenReturn("20 packages"); + when(mContext.getResources().getQuantityString(R.plurals.enterprise_privacy_number_packages, + 20, 20)).thenReturn("20 packages"); mController.updateState(preference); - assertThat(preference.getTitle()).isEqualTo("20 packages"); + assertThat(preference.getSummary()).isEqualTo("20 packages"); assertThat(preference.isVisible()).isTrue(); setNumberOfPackagesWithAdminGrantedPermissions(0); diff --git a/tests/robotests/src/com/android/settings/enterprise/CaCertsCurrentUserPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/enterprise/CaCertsCurrentUserPreferenceControllerTest.java index 364b53875fb..3cd63bb7733 100644 --- a/tests/robotests/src/com/android/settings/enterprise/CaCertsCurrentUserPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/enterprise/CaCertsCurrentUserPreferenceControllerTest.java @@ -43,8 +43,12 @@ import static org.mockito.Mockito.when; @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION) public final class CaCertsCurrentUserPreferenceControllerTest { - private final String INSTALLED_CERTS_USER = "10 certs installed"; - private final String INSTALLED_CERTS_PERSONAL = "10 certs installed in personal profile"; + private final String INSTALLED_CERTS_USER_1 = "cert installed"; + private final String INSTALLED_CERTS_USER_10 = "certs installed"; + private final String INSTALLED_CERTS_PERSONAL_1 = "cert installed in personal profile"; + private final String INSTALLED_CERTS_PERSONAL_10 = "certs installed in personal profile"; + private final String NUMBER_INSTALLED_CERTS_1 = "1 cert"; + private final String NUMBER_INSTALLED_CERTS_10 = "10 certs"; @Mock(answer = Answers.RETURNS_DEEP_STUBS) private Context mContext; @@ -58,12 +62,21 @@ public final class CaCertsCurrentUserPreferenceControllerTest { FakeFeatureFactory.setupForTest(mContext); mFeatureFactory = (FakeFeatureFactory) FakeFeatureFactory.getFactory(mContext); mController = new CaCertsCurrentUserPreferenceController(mContext); + + when(mContext.getResources().getQuantityString(R.plurals.enterprise_privacy_ca_certs_user, + 1)).thenReturn(INSTALLED_CERTS_USER_1); + when(mContext.getResources().getQuantityString(R.plurals.enterprise_privacy_ca_certs_user, + 10)).thenReturn(INSTALLED_CERTS_USER_10); when(mContext.getResources().getQuantityString( - R.plurals.enterprise_privacy_ca_certs_user, 10, 10)) - .thenReturn(INSTALLED_CERTS_USER); + R.plurals.enterprise_privacy_ca_certs_personal, 1)) + .thenReturn(INSTALLED_CERTS_PERSONAL_1); when(mContext.getResources().getQuantityString( - R.plurals.enterprise_privacy_ca_certs_personal, 10, 10)) - .thenReturn(INSTALLED_CERTS_PERSONAL); + R.plurals.enterprise_privacy_ca_certs_personal, 10)) + .thenReturn(INSTALLED_CERTS_PERSONAL_10); + when(mContext.getResources().getQuantityString(R.plurals.enterprise_privacy_number_ca_certs, + 1, 1)).thenReturn(NUMBER_INSTALLED_CERTS_1); + when(mContext.getResources().getQuantityString(R.plurals.enterprise_privacy_number_ca_certs, + 10, 10)).thenReturn(NUMBER_INSTALLED_CERTS_10); } @Test @@ -78,11 +91,20 @@ public final class CaCertsCurrentUserPreferenceControllerTest { mController.updateState(preference); assertThat(preference.isVisible()).isFalse(); + when(mFeatureFactory.enterprisePrivacyFeatureProvider + .getNumberOfOwnerInstalledCaCertsInCurrentUser()).thenReturn(1); + mController.updateState(preference); + assertThat(preference.isVisible()).isTrue(); + assertThat(preference.getTitle()).isEqualTo(INSTALLED_CERTS_USER_1); + assertThat(preference.getSummary()).isEqualTo(NUMBER_INSTALLED_CERTS_1); + + preference.setVisible(false); when(mFeatureFactory.enterprisePrivacyFeatureProvider .getNumberOfOwnerInstalledCaCertsInCurrentUser()).thenReturn(10); mController.updateState(preference); assertThat(preference.isVisible()).isTrue(); - assertThat(preference.getTitle()).isEqualTo(INSTALLED_CERTS_USER); + assertThat(preference.getTitle()).isEqualTo(INSTALLED_CERTS_USER_10); + assertThat(preference.getSummary()).isEqualTo(NUMBER_INSTALLED_CERTS_10); when(mFeatureFactory.enterprisePrivacyFeatureProvider.isInCompMode()).thenReturn(true); @@ -91,11 +113,20 @@ public final class CaCertsCurrentUserPreferenceControllerTest { mController.updateState(preference); assertThat(preference.isVisible()).isFalse(); + when(mFeatureFactory.enterprisePrivacyFeatureProvider + .getNumberOfOwnerInstalledCaCertsInCurrentUser()).thenReturn(1); + mController.updateState(preference); + assertThat(preference.isVisible()).isTrue(); + assertThat(preference.getTitle()).isEqualTo(INSTALLED_CERTS_PERSONAL_1); + assertThat(preference.getSummary()).isEqualTo(NUMBER_INSTALLED_CERTS_1); + + preference.setVisible(false); when(mFeatureFactory.enterprisePrivacyFeatureProvider .getNumberOfOwnerInstalledCaCertsInCurrentUser()).thenReturn(10); mController.updateState(preference); assertThat(preference.isVisible()).isTrue(); - assertThat(preference.getTitle()).isEqualTo(INSTALLED_CERTS_PERSONAL); + assertThat(preference.getTitle()).isEqualTo(INSTALLED_CERTS_PERSONAL_10); + assertThat(preference.getSummary()).isEqualTo(NUMBER_INSTALLED_CERTS_10); } @Test diff --git a/tests/robotests/src/com/android/settings/enterprise/CaCertsManagedProfilePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/enterprise/CaCertsManagedProfilePreferenceControllerTest.java index ff741e186a8..c66128b8a8f 100644 --- a/tests/robotests/src/com/android/settings/enterprise/CaCertsManagedProfilePreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/enterprise/CaCertsManagedProfilePreferenceControllerTest.java @@ -43,7 +43,10 @@ import static org.mockito.Mockito.when; @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION) public final class CaCertsManagedProfilePreferenceControllerTest { - private final String INSTALLED_CERTS = "10 certs installed"; + private final String INSTALLED_CERTS_1 = "cert installed"; + private final String INSTALLED_CERTS_10 = "certs installed"; + private final String NUMBER_INSTALLED_CERTS_1 = "1 cert"; + private final String NUMBER_INSTALLED_CERTS_10 = "10 certs"; @Mock(answer = Answers.RETURNS_DEEP_STUBS) private Context mContext; @@ -57,8 +60,15 @@ public final class CaCertsManagedProfilePreferenceControllerTest { FakeFeatureFactory.setupForTest(mContext); mFeatureFactory = (FakeFeatureFactory) FakeFeatureFactory.getFactory(mContext); mController = new CaCertsManagedProfilePreferenceController(mContext); - when(mContext.getResources().getQuantityString( - R.plurals.enterprise_privacy_ca_certs_work, 10, 10)).thenReturn(INSTALLED_CERTS); + + when(mContext.getResources().getQuantityString(R.plurals.enterprise_privacy_ca_certs_work, + 1)).thenReturn(INSTALLED_CERTS_1); + when(mContext.getResources().getQuantityString(R.plurals.enterprise_privacy_ca_certs_work, + 10)).thenReturn(INSTALLED_CERTS_10); + when(mContext.getResources().getQuantityString(R.plurals.enterprise_privacy_number_ca_certs, + 1, 1)).thenReturn(NUMBER_INSTALLED_CERTS_1); + when(mContext.getResources().getQuantityString(R.plurals.enterprise_privacy_number_ca_certs, + 10, 10)).thenReturn(NUMBER_INSTALLED_CERTS_10); } @Test @@ -71,11 +81,20 @@ public final class CaCertsManagedProfilePreferenceControllerTest { mController.updateState(preference); assertThat(preference.isVisible()).isFalse(); + when(mFeatureFactory.enterprisePrivacyFeatureProvider + .getNumberOfOwnerInstalledCaCertsInManagedProfile()).thenReturn(1); + mController.updateState(preference); + assertThat(preference.isVisible()).isTrue(); + assertThat(preference.getTitle()).isEqualTo(INSTALLED_CERTS_1); + assertThat(preference.getSummary()).isEqualTo(NUMBER_INSTALLED_CERTS_1); + + preference.setVisible(false); when(mFeatureFactory.enterprisePrivacyFeatureProvider .getNumberOfOwnerInstalledCaCertsInManagedProfile()).thenReturn(10); mController.updateState(preference); assertThat(preference.isVisible()).isTrue(); - assertThat(preference.getTitle()).isEqualTo(INSTALLED_CERTS); + assertThat(preference.getTitle()).isEqualTo(INSTALLED_CERTS_10); + assertThat(preference.getSummary()).isEqualTo(NUMBER_INSTALLED_CERTS_10); } @Test diff --git a/tests/robotests/src/com/android/settings/enterprise/EnterpriseInstalledPackagesPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/enterprise/EnterpriseInstalledPackagesPreferenceControllerTest.java index b55b5125eda..46c29b269c0 100644 --- a/tests/robotests/src/com/android/settings/enterprise/EnterpriseInstalledPackagesPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/enterprise/EnterpriseInstalledPackagesPreferenceControllerTest.java @@ -86,11 +86,10 @@ public final class EnterpriseInstalledPackagesPreferenceControllerTest { assertThat(preference.isVisible()).isFalse(); setNumberOfEnterpriseInstalledPackages(20); - when(mContext.getResources().getQuantityString( - R.plurals.enterprise_privacy_number_enterprise_installed_packages, 20, 20)) - .thenReturn("20 packages"); + when(mContext.getResources().getQuantityString(R.plurals.enterprise_privacy_number_packages, + 20, 20)).thenReturn("20 packages"); mController.updateState(preference); - assertThat(preference.getTitle()).isEqualTo("20 packages"); + assertThat(preference.getSummary()).isEqualTo("20 packages"); assertThat(preference.isVisible()).isTrue(); } diff --git a/tests/robotests/src/com/android/settings/enterprise/EnterpriseSetDefaultAppsPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/enterprise/EnterpriseSetDefaultAppsPreferenceControllerTest.java index 84520a51c6d..093ce2038dc 100644 --- a/tests/robotests/src/com/android/settings/enterprise/EnterpriseSetDefaultAppsPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/enterprise/EnterpriseSetDefaultAppsPreferenceControllerTest.java @@ -118,11 +118,10 @@ public final class EnterpriseSetDefaultAppsPreferenceControllerTest { ContactsContract.Contacts.CONTENT_TYPE)}, 32); setEnterpriseSetDefaultApps(new Intent[] {new Intent(Intent.ACTION_DIAL), new Intent(Intent.ACTION_CALL)}, 64); - when(mContext.getResources().getQuantityString( - R.plurals.enterprise_privacy_number_enterprise_set_default_apps, 127, 127)) - .thenReturn("127 apps"); + when(mContext.getResources().getQuantityString(R.plurals.enterprise_privacy_number_packages, + 127, 127)).thenReturn("127 apps"); mController.updateState(preference); - assertThat(preference.getTitle()).isEqualTo("127 apps"); + assertThat(preference.getSummary()).isEqualTo("127 apps"); assertThat(preference.isVisible()).isTrue(); } diff --git a/tests/robotests/src/com/android/settings/enterprise/FailedPasswordWipeManagedProfilePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/enterprise/FailedPasswordWipeManagedProfilePreferenceControllerTest.java index 29952a701a2..c9981f9b74e 100644 --- a/tests/robotests/src/com/android/settings/enterprise/FailedPasswordWipeManagedProfilePreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/enterprise/FailedPasswordWipeManagedProfilePreferenceControllerTest.java @@ -18,7 +18,6 @@ package com.android.settings.enterprise; import android.content.Context; -import com.android.settings.R; import com.android.settings.SettingsRobolectricTestRunner; import com.android.settings.TestConfig; @@ -38,8 +37,7 @@ public final class FailedPasswordWipeManagedProfilePreferenceControllerTest exte private int mMaximumFailedPasswordsBeforeWipe = 0; public FailedPasswordWipeManagedProfilePreferenceControllerTest() { - super("failed_password_wipe_managed_profile", - R.plurals.enterprise_privacy_failed_password_wipe_work); + super("failed_password_wipe_managed_profile"); } @Override diff --git a/tests/robotests/src/com/android/settings/enterprise/FailedPasswordWipePreferenceControllerBaseTest.java b/tests/robotests/src/com/android/settings/enterprise/FailedPasswordWipePreferenceControllerBaseTest.java index 97d0d6d843d..1c7b448efc5 100644 --- a/tests/robotests/src/com/android/settings/enterprise/FailedPasswordWipePreferenceControllerBaseTest.java +++ b/tests/robotests/src/com/android/settings/enterprise/FailedPasswordWipePreferenceControllerBaseTest.java @@ -33,7 +33,7 @@ public final class FailedPasswordWipePreferenceControllerBaseTest extends private int mMaximumFailedPasswordsBeforeWipe = 0; public FailedPasswordWipePreferenceControllerBaseTest() { - super(null, 123 /* stringResourceId */); + super(null); } @Override @@ -50,7 +50,7 @@ public final class FailedPasswordWipePreferenceControllerBaseTest extends private class FailedPasswordWipePreferenceControllerBaseTestable extends FailedPasswordWipePreferenceControllerBase { FailedPasswordWipePreferenceControllerBaseTestable() { - super(FailedPasswordWipePreferenceControllerBaseTest.this.mContext, mStringResourceId); + super(FailedPasswordWipePreferenceControllerBaseTest.this.mContext); } @Override diff --git a/tests/robotests/src/com/android/settings/enterprise/FailedPasswordWipePreferenceControllerTestBase.java b/tests/robotests/src/com/android/settings/enterprise/FailedPasswordWipePreferenceControllerTestBase.java index 5a74fa58e44..aa189e2c672 100644 --- a/tests/robotests/src/com/android/settings/enterprise/FailedPasswordWipePreferenceControllerTestBase.java +++ b/tests/robotests/src/com/android/settings/enterprise/FailedPasswordWipePreferenceControllerTestBase.java @@ -20,6 +20,7 @@ import android.content.Context; import android.content.res.Resources; import android.support.v7.preference.Preference; +import com.android.settings.R; import com.android.settings.testutils.FakeFeatureFactory; import org.junit.Before; @@ -37,7 +38,6 @@ import static org.mockito.Mockito.when; public abstract class FailedPasswordWipePreferenceControllerTestBase { protected final String mKey; - protected final int mStringResourceId; @Mock(answer = Answers.RETURNS_DEEP_STUBS) protected Context mContext; @@ -45,9 +45,8 @@ public abstract class FailedPasswordWipePreferenceControllerTestBase { protected FailedPasswordWipePreferenceControllerBase mController; - public FailedPasswordWipePreferenceControllerTestBase(String key, int stringResourceId) { + public FailedPasswordWipePreferenceControllerTestBase(String key) { mKey = key; - mStringResourceId = stringResourceId; } @Before @@ -65,11 +64,11 @@ public abstract class FailedPasswordWipePreferenceControllerTestBase { preference.setVisible(false); setMaximumFailedPasswordsBeforeWipe(10); - when(mContext.getResources().getQuantityString(mStringResourceId, 10, 10)) + when(mContext.getResources().getQuantityString( + R.plurals.enterprise_privacy_number_failed_password_wipe, 10, 10)) .thenReturn("10 attempts"); mController.updateState(preference); - assertThat(preference.getTitle()).isEqualTo("10 attempts"); - assertThat(preference.isVisible()).isTrue(); + assertThat(preference.getSummary()).isEqualTo("10 attempts"); setMaximumFailedPasswordsBeforeWipe(0); mController.updateState(preference); diff --git a/tests/robotests/src/com/android/settings/enterprise/FailedPasswordWipePrimaryUserPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/enterprise/FailedPasswordWipePrimaryUserPreferenceControllerTest.java index ea6d977a4af..65c982829c7 100644 --- a/tests/robotests/src/com/android/settings/enterprise/FailedPasswordWipePrimaryUserPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/enterprise/FailedPasswordWipePrimaryUserPreferenceControllerTest.java @@ -18,7 +18,6 @@ package com.android.settings.enterprise; import android.content.Context; -import com.android.settings.R; import com.android.settings.SettingsRobolectricTestRunner; import com.android.settings.TestConfig; @@ -38,8 +37,7 @@ public final class FailedPasswordWipePrimaryUserPreferenceControllerTest extends private int mMaximumFailedPasswordsBeforeWipe = 0; public FailedPasswordWipePrimaryUserPreferenceControllerTest() { - super("failed_password_wipe_primary_user", - R.plurals.enterprise_privacy_failed_password_wipe_device); + super("failed_password_wipe_primary_user"); } @Override diff --git a/tests/robotests/src/com/android/settings/enterprise/ImePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/enterprise/ImePreferenceControllerTest.java index 232a8726624..547746c84eb 100644 --- a/tests/robotests/src/com/android/settings/enterprise/ImePreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/enterprise/ImePreferenceControllerTest.java @@ -44,7 +44,7 @@ import static org.mockito.Mockito.when; public final class ImePreferenceControllerTest { private final String DEFAULT_IME_LABEL = "Test IME"; - private final String DEFAULT_IME_TEXT = "IME set to Test IME"; + private final String DEFAULT_IME_TEXT = "Set to Test IME"; @Mock(answer = Answers.RETURNS_DEEP_STUBS) private Context mContext; @@ -58,7 +58,7 @@ public final class ImePreferenceControllerTest { FakeFeatureFactory.setupForTest(mContext); mFeatureFactory = (FakeFeatureFactory) FakeFeatureFactory.getFactory(mContext); mController = new ImePreferenceController(mContext); - when(mContext.getResources().getString(R.string.enterprise_privacy_input_method, + when(mContext.getResources().getString(R.string.enterprise_privacy_input_method_name, DEFAULT_IME_LABEL)).thenReturn(DEFAULT_IME_TEXT); } @@ -76,7 +76,7 @@ public final class ImePreferenceControllerTest { .thenReturn(DEFAULT_IME_LABEL); mController.updateState(preference); assertThat(preference.isVisible()).isTrue(); - assertThat(preference.getTitle()).isEqualTo(DEFAULT_IME_TEXT); + assertThat(preference.getSummary()).isEqualTo(DEFAULT_IME_TEXT); } @Test diff --git a/tests/robotests/src/com/android/settings/enterprise/InstalledPackagesPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/enterprise/InstalledPackagesPreferenceControllerTest.java index bf2c4ca1fcc..60ceed6d460 100644 --- a/tests/robotests/src/com/android/settings/enterprise/InstalledPackagesPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/enterprise/InstalledPackagesPreferenceControllerTest.java @@ -64,22 +64,30 @@ public final class InstalledPackagesPreferenceControllerTest { mController = new InstalledPackagesPreferenceController(mContext); } - @Test - public void testUpdateState() { - final Preference preference = new Preference(mContext, null, 0, 0); + private void setNumberOfInstalledPackages(int number) { doAnswer(new Answer() { public Object answer(InvocationOnMock invocation) { ((ApplicationFeatureProvider.NumberOfAppsCallback) - invocation.getArguments()[1]).onNumberOfAppsResult(20); + invocation.getArguments()[1]).onNumberOfAppsResult(number); return null; }}).when(mFeatureFactory.applicationFeatureProvider) .calculateNumberOfInstalledApps( eq(ApplicationFeatureProvider.IGNORE_INSTALL_REASON), anyObject()); - when(mContext.getResources().getQuantityString( - R.plurals.enterprise_privacy_number_installed_packages, 20, 20)) - .thenReturn("20 packages"); + } + + @Test + public void testUpdateState() { + final Preference preference = new Preference(mContext, null, 0, 0); + + setNumberOfInstalledPackages(0); mController.updateState(preference); - assertThat(preference.getTitle()).isEqualTo("20 packages"); + assertThat(preference.getSummary()).isEqualTo(""); + + setNumberOfInstalledPackages(20); + when(mContext.getResources().getQuantityString(R.plurals.enterprise_privacy_number_packages, + 20, 20)).thenReturn("20 packages"); + mController.updateState(preference); + assertThat(preference.getSummary()).isEqualTo("20 packages"); } @Test @@ -95,6 +103,6 @@ public final class InstalledPackagesPreferenceControllerTest { @Test public void testGetPreferenceKey() { - assertThat(mController.getPreferenceKey()).isEqualTo("number_installed_packages"); + assertThat(mController.getPreferenceKey()).isEqualTo("installed_packages"); } }