summaryrefslogtreecommitdiff
path: root/core/src/test/java
diff options
context:
space:
mode:
authororionlee <orionlee@yahoo.com>2018-05-18 15:20:21 -0700
committerorionlee <orionlee@yahoo.com>2019-11-05 10:54:21 -0800
commitbfde3c731514f1a761710d634c39a80ad75bdf10 (patch)
tree63d8538a5aa002c65e941daacbfa9d8588a6f7a6 /core/src/test/java
parentba27ec6b31314bbcfebf55e38a913d5b10757e83 (diff)
downloadAntennaPod-bfde3c731514f1a761710d634c39a80ad75bdf10.zip
refactor - DBWriterTest: parametrize the set of tests
Diffstat (limited to 'core/src/test/java')
-rw-r--r--core/src/test/java/de/danoeh/antennapod/core/storage/DBWriterTest.java58
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) {