summaryrefslogtreecommitdiffstats
path: root/core/tests
diff options
context:
space:
mode:
Diffstat (limited to 'core/tests')
-rw-r--r--core/tests/coretests/src/android/provider/SettingsProviderTest.java36
1 files changed, 36 insertions, 0 deletions
diff --git a/core/tests/coretests/src/android/provider/SettingsProviderTest.java b/core/tests/coretests/src/android/provider/SettingsProviderTest.java
index 6edd2dc..131651a 100644
--- a/core/tests/coretests/src/android/provider/SettingsProviderTest.java
+++ b/core/tests/coretests/src/android/provider/SettingsProviderTest.java
@@ -132,6 +132,42 @@ public class SettingsProviderTest extends AndroidTestCase {
}
@MediumTest
+ public void testSettingsChangeForOtherUser() {
+ UserManager um = (UserManager) getContext().getSystemService(Context.USER_SERVICE);
+ ContentResolver r = getContext().getContentResolver();
+
+ // Make sure there's an owner
+ assertTrue(findUser(um, UserHandle.USER_OWNER));
+
+ // create a new user to use for testing
+ UserInfo otherUser = um.createUser("TestUser1", UserInfo.FLAG_GUEST);
+ assertTrue(otherUser != null);
+ try {
+ assertNotSame("Current calling user id should not be the new guest user",
+ otherUser.id, UserHandle.getCallingUserId());
+
+ Settings.Secure.putString(r, Settings.Secure.LOCATION_PROVIDERS_ALLOWED, "gps");
+ Settings.Secure.putStringForUser(r,
+ Settings.Secure.LOCATION_PROVIDERS_ALLOWED, "network", otherUser.id);
+
+ assertEquals("gps",
+ Settings.Secure.getString(r, Settings.Secure.LOCATION_PROVIDERS_ALLOWED));
+ assertEquals("network", Settings.Secure.getStringForUser(
+ r, Settings.Secure.LOCATION_PROVIDERS_ALLOWED, otherUser.id));
+
+ assertNotSame("Current calling user id should not be the new guest user",
+ otherUser.id, UserHandle.getCallingUserId());
+ Settings.Secure.setLocationProviderEnabledForUser(r, "network", false, otherUser.id);
+ assertEquals("", Settings.Secure.getStringForUser(
+ r, Settings.Secure.LOCATION_PROVIDERS_ALLOWED, otherUser.id));
+
+ } finally {
+ // Tidy up
+ um.removeUser(otherUser.id);
+ }
+ }
+
+ @MediumTest
public void testRowNumberContentUri() {
ContentResolver r = getContext().getContentResolver();