summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/src/com/android/providers/downloads/DownloadProviderFunctionalTest.java17
-rw-r--r--tests/src/com/android/providers/downloads/FakeSystemFacade.java6
2 files changed, 23 insertions, 0 deletions
diff --git a/tests/src/com/android/providers/downloads/DownloadProviderFunctionalTest.java b/tests/src/com/android/providers/downloads/DownloadProviderFunctionalTest.java
index dbab203c..41dff672 100644
--- a/tests/src/com/android/providers/downloads/DownloadProviderFunctionalTest.java
+++ b/tests/src/com/android/providers/downloads/DownloadProviderFunctionalTest.java
@@ -101,6 +101,23 @@ public class DownloadProviderFunctionalTest extends AbstractDownloadProviderFunc
runUntilStatus(downloadUri, Downloads.Impl.STATUS_SUCCESS);
}
+ public void testCleartextTrafficPermittedFlagHonored() throws Exception {
+ enqueueResponse(buildResponse(HTTP_OK, FILE_CONTENT));
+ enqueueResponse(buildResponse(HTTP_OK, FILE_CONTENT));
+
+ // Assert that HTTP request succeeds when cleartext traffic is permitted
+ mSystemFacade.mCleartextTrafficPermitted = true;
+ Uri downloadUri = requestDownload("/path");
+ assertEquals("http", downloadUri.getScheme());
+ runUntilStatus(downloadUri, Downloads.Impl.STATUS_SUCCESS);
+
+ // Assert that HTTP request fails when cleartext traffic is not permitted
+ mSystemFacade.mCleartextTrafficPermitted = false;
+ downloadUri = requestDownload("/path");
+ assertEquals("http", downloadUri.getScheme());
+ runUntilStatus(downloadUri, Downloads.Impl.STATUS_BAD_REQUEST);
+ }
+
/**
* Read a downloaded file from disk.
*/
diff --git a/tests/src/com/android/providers/downloads/FakeSystemFacade.java b/tests/src/com/android/providers/downloads/FakeSystemFacade.java
index 5a15d399..7581e6fa 100644
--- a/tests/src/com/android/providers/downloads/FakeSystemFacade.java
+++ b/tests/src/com/android/providers/downloads/FakeSystemFacade.java
@@ -16,6 +16,7 @@ public class FakeSystemFacade implements SystemFacade {
Long mMaxBytesOverMobile = null;
Long mRecommendedMaxBytesOverMobile = null;
List<Intent> mBroadcastsSent = new ArrayList<Intent>();
+ boolean mCleartextTrafficPermitted = true;
private boolean mReturnActualTime = false;
public void setUp() {
@@ -82,6 +83,11 @@ public class FakeSystemFacade implements SystemFacade {
return true;
}
+ @Override
+ public boolean isCleartextTrafficPermitted(int uid) {
+ return mCleartextTrafficPermitted;
+ }
+
public void setReturnActualTime(boolean flag) {
mReturnActualTime = flag;
}