diff options
Diffstat (limited to 'src/instrumentationTest/de/test/antennapod/storage/DBTestUtils.java')
-rw-r--r-- | src/instrumentationTest/de/test/antennapod/storage/DBTestUtils.java | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/src/instrumentationTest/de/test/antennapod/storage/DBTestUtils.java b/src/instrumentationTest/de/test/antennapod/storage/DBTestUtils.java new file mode 100644 index 000000000..fbb7b0386 --- /dev/null +++ b/src/instrumentationTest/de/test/antennapod/storage/DBTestUtils.java @@ -0,0 +1,56 @@ +package instrumentationTest.de.test.antennapod.storage; + +import android.content.Context; +import de.danoeh.antennapod.feed.Feed; +import de.danoeh.antennapod.feed.FeedItem; +import de.danoeh.antennapod.feed.FeedMedia; +import de.danoeh.antennapod.storage.PodDBAdapter; +import de.danoeh.antennapod.util.comparator.FeedItemPubdateComparator; +import junit.framework.Assert; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.Date; +import java.util.List; + +/** + * Utility methods for DB* tests. + */ +public class DBTestUtils { + + public static List<Feed> saveFeedlist(Context context, int numFeeds, int numItems, boolean withMedia) { + if (numFeeds <= 0) { + throw new IllegalArgumentException("numFeeds<=0"); + } + if (numItems < 0) { + throw new IllegalArgumentException("numItems<0"); + } + + List<Feed> feeds = new ArrayList<Feed>(); + PodDBAdapter adapter = new PodDBAdapter(context); + adapter.open(); + for (int i = 0; i < numFeeds; i++) { + Feed f = new Feed(0, new Date(), "feed " + i, "link" + i, "descr", null, null, + null, null, "id" + i, null, null, "url" + i, false); + f.setItems(new ArrayList<FeedItem>()); + for (int j = 0; j < numItems; j++) { + FeedItem item = new FeedItem(0, "item " + j, "id" + j, "link" + j, new Date(), + true, f); + if (withMedia) { + FeedMedia media = new FeedMedia(item, "url" + j, 1, "audio/mp3"); + item.setMedia(media); + } + f.getItems().add(item); + } + Collections.sort(f.getItems(), new FeedItemPubdateComparator()); + adapter.setCompleteFeed(f); + Assert.assertTrue(f.getId() != 0); + for (FeedItem item : f.getItems()) { + Assert.assertTrue(item.getId() != 0); + } + feeds.add(f); + } + adapter.close(); + return feeds; + } +} |