diff options
-rw-r--r-- | core/src/test/java/de/danoeh/antennapod/core/storage/DBWriterTest.java | 58 |
1 files changed, 31 insertions, 27 deletions
diff --git a/core/src/test/java/de/danoeh/antennapod/core/storage/DBWriterTest.java b/core/src/test/java/de/danoeh/antennapod/core/storage/DBWriterTest.java index 0d494534c..d6ccbba3a 100644 --- a/core/src/test/java/de/danoeh/antennapod/core/storage/DBWriterTest.java +++ b/core/src/test/java/de/danoeh/antennapod/core/storage/DBWriterTest.java @@ -1,6 +1,10 @@ package de.danoeh.antennapod.core.storage; import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.Parameterized; +import org.junit.runners.Parameterized.Parameter; +import org.junit.runners.Parameterized.Parameters; import java.util.Arrays; import java.util.Date; @@ -15,43 +19,43 @@ import static org.junit.Assert.assertEquals; public class DBWriterTest { + @RunWith(Parameterized.class) public static class ItemEnqueuePositionCalculatorTest { - @Test - public void testEnqueueDefault() { - - ItemEnqueuePositionCalculator calculator = - new ItemEnqueuePositionCalculator(new Options()); - - List<FeedItem> curQueue = tQueue(); - - int posActual1 = calculator.calcPosition(0, tFI(101), curQueue); - assertEquals("case default, i.e., add to the end", curQueue.size(), posActual1); - - int posActual2 = calculator.calcPosition(1, tFI(102), curQueue); - assertEquals("case default (2nd item)", curQueue.size(), posActual2); - + @Parameters(name = "{index}: case<{0}>, expected:{1}") + public static Iterable<Object[]> data() { + Options optDefault = new Options(); + Options optEnqAtFront = new Options().setEnqueueAtFront(true); + + return Arrays.asList(new Object[][] { + {"case default, i.e., add to the end", QUEUE_DEFAULT.size(), optDefault , 0}, + {"case default (2nd item)", QUEUE_DEFAULT.size(), optDefault , 1}, + {"case option enqueue at front", 0, optEnqAtFront , 0}, + {"case option enqueue at front (2nd item)", 1, optEnqAtFront , 1} + }); } - @Test - public void testEnqueueAtFront() { + private static final List<FeedItem> QUEUE_DEFAULT = Arrays.asList(tFI(11), tFI(12), tFI(13), tFI(14)); - ItemEnqueuePositionCalculator calculator = - new ItemEnqueuePositionCalculator(new Options() - .setEnqueueAtFront(true)); + @Parameter + public String message; - List<FeedItem> curQueue = tQueue(); + @Parameter(1) + public int posExpected; - int posActual1 = calculator.calcPosition(0, tFI(101), curQueue); - assertEquals("case option enqueue at front", 0, posActual1); + @Parameter(2) + public Options options; - int posActual2 = calculator.calcPosition(1, tFI(102), curQueue); - assertEquals("case option enqueue at front (2nd item)", 1, posActual2); + @Parameter(3) + public int posAmongAdded; // the position of feed item to be inserted among the list to be inserted. - } - private static List<FeedItem> tQueue() { - return Arrays.asList(tFI(11), tFI(12), tFI(13), tFI(14)); + @Test + public void test() { + ItemEnqueuePositionCalculator calculator = new ItemEnqueuePositionCalculator(options); + + int posActual = calculator.calcPosition(posAmongAdded, tFI(101), QUEUE_DEFAULT); + assertEquals(message, posExpected , posActual); } private static FeedItem tFI(int id) { |