Update settings provider - insert in secure settings test
The settings provider fails fast if the input for the insert method
is not valid. The test is trying to insert a null key which is not
a valid key. Note that in this case no mutation is performed. To really
tests the provider protection we are inserting a valid key, value pair.
bug:21619456
Change-Id: Iadd9208deda1fa44eb2fc8a76347a19b417e0010
diff --git a/tests/tests/permission2/src/android/permission2/cts/NoWriteSecureSettingsPermissionTest.java b/tests/tests/permission2/src/android/permission2/cts/NoWriteSecureSettingsPermissionTest.java
index eb476c7..b46c45d 100644
--- a/tests/tests/permission2/src/android/permission2/cts/NoWriteSecureSettingsPermissionTest.java
+++ b/tests/tests/permission2/src/android/permission2/cts/NoWriteSecureSettingsPermissionTest.java
@@ -16,6 +16,9 @@
package android.permission2.cts;
+import android.Manifest;
+import android.content.ContentValues;
+import android.provider.Settings;
import android.test.AndroidTestCase;
/**
@@ -30,7 +33,15 @@
* {@link android.Manifest.permission#WRITE_SECURE_SETTINGS}
*/
public void testWriteSecureSettings() {
- assertWritingContentUriRequiresPermission(android.provider.Settings.Secure.CONTENT_URI,
- android.Manifest.permission.WRITE_SECURE_SETTINGS);
+ try {
+ ContentValues values = new ContentValues();
+ values.put(Settings.Secure.NAME, Settings.Secure.ACCESSIBILITY_ENABLED);
+ values.put(Settings.Secure.VALUE, Boolean.TRUE);
+ getContext().getContentResolver().insert(Settings.Secure.CONTENT_URI, values);
+ fail("expected SecurityException requiring "
+ + Manifest.permission.WRITE_SECURE_SETTINGS);
+ } catch (SecurityException expected) {
+ /* do nothing */
+ }
}
}