summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/src/com/android/providers/downloads/AbstractDownloadProviderFunctionalTest.java18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/src/com/android/providers/downloads/AbstractDownloadProviderFunctionalTest.java b/tests/src/com/android/providers/downloads/AbstractDownloadProviderFunctionalTest.java
index 0330fd38..813252a8 100644
--- a/tests/src/com/android/providers/downloads/AbstractDownloadProviderFunctionalTest.java
+++ b/tests/src/com/android/providers/downloads/AbstractDownloadProviderFunctionalTest.java
@@ -172,6 +172,7 @@ public abstract class AbstractDownloadProviderFunctionalTest extends
mSystemFacade.setUp();
assertTrue(isDatabaseEmpty()); // ensure we're not messing with real data
+ assertTrue(isDatabaseSecureAgainstBadSelection());
mServer = new MockWebServer();
mServer.play();
}
@@ -200,6 +201,23 @@ public abstract class AbstractDownloadProviderFunctionalTest extends
}
}
+ private boolean isDatabaseSecureAgainstBadSelection() {
+ Cursor cursor = null;
+ try {
+ cursor = mResolver.query(Downloads.Impl.ALL_DOWNLOADS_CONTENT_URI, null,
+ "('1'='1'))) ORDER BY lastmod DESC--", null, null);
+ }
+ catch (Exception e) {
+ return true;
+ } finally {
+ if (cursor != null) {
+ cursor.close();
+ }
+ }
+
+ return false;
+ }
+
/**
* Remove any downloaded files and delete any lingering downloads.
*/