summaryrefslogtreecommitdiff
path: root/src/test/java/au/id/zancanaro/SimpleListOperationsTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java/au/id/zancanaro/SimpleListOperationsTest.java')
-rw-r--r--src/test/java/au/id/zancanaro/SimpleListOperationsTest.java43
1 files changed, 43 insertions, 0 deletions
diff --git a/src/test/java/au/id/zancanaro/SimpleListOperationsTest.java b/src/test/java/au/id/zancanaro/SimpleListOperationsTest.java
new file mode 100644
index 0000000..2ff44e7
--- /dev/null
+++ b/src/test/java/au/id/zancanaro/SimpleListOperationsTest.java
@@ -0,0 +1,43 @@
+package au.id.zancanaro;
+
+import au.id.zancanaro.annotations.Property;
+import org.junit.runner.RunWith;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import static au.id.zancanaro.Generators.integer;
+import static au.id.zancanaro.Generators.listOf;
+import static org.junit.Assert.assertEquals;
+
+@RunWith(Properties.class)
+public class SimpleListOperationsTest {
+
+ @SuppressWarnings("unused")
+ public static Generator<Integer> integers = integer();
+
+ @SuppressWarnings("unused")
+ public static Generator<List<Integer>> listOfIntegers = listOf(integer());
+
+ @Property(maxSize = 10000, runs = 10000)
+ public void sortingIsIdempotent(List<Integer> list) {
+ List<Integer> left = new ArrayList<>(list);
+ Collections.sort(left);
+
+ List<Integer> right = new ArrayList<>(list);
+ Collections.sort(right);
+ Collections.sort(right);
+
+ assertEquals(left, right);
+ }
+
+ @Property(maxSize = 10000, runs = 10000)
+ public void reverseIsItsOwnInverse(List<Integer> list) {
+ List<Integer> reversed = new ArrayList<>(list);
+ Collections.reverse(reversed);
+ Collections.reverse(reversed);
+
+ assertEquals(list, reversed);
+ }
+}