diff options
Diffstat (limited to 'tests/src/com/android/providers/downloads')
-rw-r--r-- | tests/src/com/android/providers/downloads/AbstractPublicApiTest.java | 19 | ||||
-rw-r--r-- | tests/src/com/android/providers/downloads/PublicApiFunctionalTest.java | 2 |
2 files changed, 12 insertions, 9 deletions
diff --git a/tests/src/com/android/providers/downloads/AbstractPublicApiTest.java b/tests/src/com/android/providers/downloads/AbstractPublicApiTest.java index 12c04f6a..e7f08c90 100644 --- a/tests/src/com/android/providers/downloads/AbstractPublicApiTest.java +++ b/tests/src/com/android/providers/downloads/AbstractPublicApiTest.java @@ -100,21 +100,24 @@ public abstract class AbstractPublicApiTest extends AbstractDownloadProviderFunc } void runUntilStatus(int status) throws TimeoutException { + final long startMillis = mSystemFacade.currentTimeMillis(); startService(null); - waitForStatus(status); + waitForStatus(status, startMillis); } - void waitForStatus(int expected) throws TimeoutException { + void waitForStatus(int expected, long afterMillis) throws TimeoutException { int actual = -1; final long timeout = SystemClock.elapsedRealtime() + (15 * SECOND_IN_MILLIS); while (SystemClock.elapsedRealtime() < timeout) { - actual = getStatus(); - if (actual == STATUS_SUCCESSFUL || actual == STATUS_FAILED) { - assertEquals(expected, actual); - return; - } else if (actual == expected) { - return; + if (getLongField(DownloadManager.COLUMN_LAST_MODIFIED_TIMESTAMP) >= afterMillis) { + actual = getStatus(); + if (actual == STATUS_SUCCESSFUL || actual == STATUS_FAILED) { + assertEquals(expected, actual); + return; + } else if (actual == expected) { + return; + } } SystemClock.sleep(100); diff --git a/tests/src/com/android/providers/downloads/PublicApiFunctionalTest.java b/tests/src/com/android/providers/downloads/PublicApiFunctionalTest.java index 4159beb6..157cce89 100644 --- a/tests/src/com/android/providers/downloads/PublicApiFunctionalTest.java +++ b/tests/src/com/android/providers/downloads/PublicApiFunctionalTest.java @@ -421,7 +421,7 @@ public class PublicApiFunctionalTest extends AbstractPublicApiTest { mManager.remove(download.mId); // make sure the row is gone from the database - download.waitForStatus(-1); + download.waitForStatus(-1, -1); } public void testDownloadCompleteBroadcast() throws Exception { |