summaryrefslogtreecommitdiff
path: root/src/test/java/au/id/zancanaro/javacheck/statem
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java/au/id/zancanaro/javacheck/statem')
-rw-r--r--src/test/java/au/id/zancanaro/javacheck/statem/QueueTest.java88
1 files changed, 0 insertions, 88 deletions
diff --git a/src/test/java/au/id/zancanaro/javacheck/statem/QueueTest.java b/src/test/java/au/id/zancanaro/javacheck/statem/QueueTest.java
deleted file mode 100644
index 4cd6345..0000000
--- a/src/test/java/au/id/zancanaro/javacheck/statem/QueueTest.java
+++ /dev/null
@@ -1,88 +0,0 @@
-package au.id.zancanaro.javacheck.statem;
-
-import au.id.zancanaro.javacheck.Generator;
-import au.id.zancanaro.javacheck.annotations.DataSource;
-import au.id.zancanaro.javacheck.annotations.Property;
-import au.id.zancanaro.javacheck.junit.Properties;
-import org.junit.runner.RunWith;
-
-import java.util.*;
-
-import static au.id.zancanaro.javacheck.Generator.pure;
-import static au.id.zancanaro.javacheck.Generators.integer;
-import static au.id.zancanaro.javacheck.Generators.oneOf;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-
-@RunWith(Properties.class)
-public class QueueTest {
- private static final Queue<Integer> queue = new LinkedList<>();
-
- @DataSource
- public static Generator<CommandList<List<Integer>>> commandGenerator =
- new CommandListGenerator<>(state -> oneOf(
- pure(new QueuePushCommand()),
- pure(new QueuePopCommand())
- ));
-
- @Property
- public void test(CommandList<List<Integer>> commands) {
- queue.clear();
- CommandResult<List<Integer>> result = commands.run(null);
- assertFalse(result.isFailed());
- }
-
- private static class QueuePushCommand extends Command<List<Integer>, Integer, Void> {
- @Override
- public Generator<Integer> argsGenerator(List<Integer> integers) {
- return integer();
- }
-
- @Override
- public Void runCommand(Integer integer) {
- queue.offer(integer);
- return null;
- }
-
- @Override
- public List<Integer> nextState(List<Integer> integers, Integer integer, CommandValue<Void> result) {
- List<Integer> nextState = new ArrayList<>(integers == null ? new ArrayList<>() : integers);
- nextState.add(integer);
- return nextState;
- }
-
- @Override
- public String toString() {
- return "push";
- }
- }
-
- private static class QueuePopCommand extends Command<List<Integer>, Void, Integer> {
- @Override
- public boolean preCondition(List<Integer> integers, Void aVoid) {
- return integers != null && !integers.isEmpty();
- }
-
- @Override
- public Integer runCommand(Void aVoid) {
- return queue.poll();
- }
-
- @Override
- public boolean postCondition(List<Integer> oldState, List<Integer> newState, Void aVoid, Integer integer) {
- return Objects.equals(integer, oldState.get(0));
- }
-
- @Override
- public List<Integer> nextState(List<Integer> integers, Void aVoid, CommandValue<Integer> result) {
- List<Integer> nextState = new ArrayList<>(integers == null ? new ArrayList<>() : integers);
- nextState.remove(0);
- return nextState;
- }
-
- @Override
- public String toString() {
- return "pop";
- }
- }
-}