diff options
author | Tom Hennen <TomHennen@users.noreply.github.com> | 2015-10-08 01:52:27 -0400 |
---|---|---|
committer | Tom Hennen <TomHennen@users.noreply.github.com> | 2015-10-08 01:52:27 -0400 |
commit | 95cc133e0acde834a425ca35381aedde27390433 (patch) | |
tree | ed0748a3fad19ca5714c22a1cd8829455e3fd855 /app/src/androidTest/java/de/test/antennapod/storage/DBQueueCleanupAlgorithmTest.java | |
parent | 57b8ced16e36f1f3dcf980ddba3ee9c807cf4dc6 (diff) | |
parent | 07bcdb167b7e6d448be514460ec259cba29a5a41 (diff) | |
download | AntennaPod-95cc133e0acde834a425ca35381aedde27390433.zip |
Merge pull request #1241 from TomHennen/cleanup_algorithm
Cleanup algorithm updates
Diffstat (limited to 'app/src/androidTest/java/de/test/antennapod/storage/DBQueueCleanupAlgorithmTest.java')
-rw-r--r-- | app/src/androidTest/java/de/test/antennapod/storage/DBQueueCleanupAlgorithmTest.java | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/app/src/androidTest/java/de/test/antennapod/storage/DBQueueCleanupAlgorithmTest.java b/app/src/androidTest/java/de/test/antennapod/storage/DBQueueCleanupAlgorithmTest.java new file mode 100644 index 000000000..890897f43 --- /dev/null +++ b/app/src/androidTest/java/de/test/antennapod/storage/DBQueueCleanupAlgorithmTest.java @@ -0,0 +1,50 @@ +package de.test.antennapod.storage; + +import android.test.FlakyTest; + +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +import de.danoeh.antennapod.core.feed.Feed; +import de.danoeh.antennapod.core.feed.FeedItem; +import de.danoeh.antennapod.core.preferences.UserPreferences; +import de.danoeh.antennapod.core.storage.DBTasks; + +/** + * Tests that the APQueueCleanupAlgorithm is working correctly. + */ +public class DBQueueCleanupAlgorithmTest extends DBCleanupTests { + + private static final String TAG = "DBQueueCleanupAlgorithmTest"; + + public DBQueueCleanupAlgorithmTest() { + super(UserPreferences.EPISODE_CLEANUP_QUEUE); + } + + /** + * For APQueueCleanupAlgorithm we expect even unplayed episodes to be deleted if needed + * if they aren't in the queue + */ + @FlakyTest(tolerance = 3) + public void testPerformAutoCleanupHandleUnplayed() throws IOException { + final int NUM_ITEMS = EPISODE_CACHE_SIZE * 2; + + Feed feed = new Feed("url", new Date(), "title"); + List<FeedItem> items = new ArrayList<>(); + feed.setItems(items); + List<File> files = new ArrayList<>(); + populateItems(NUM_ITEMS, feed, items, files, FeedItem.UNPLAYED, false, false); + + DBTasks.performAutoCleanup(context); + for (int i = 0; i < files.size(); i++) { + if (i < EPISODE_CACHE_SIZE) { + assertTrue(files.get(i).exists()); + } else { + assertFalse(files.get(i).exists()); + } + } + } +} |