diff options
author | Carlo Zancanaro <carlo@zancanaro.id.au> | 2015-06-05 17:30:46 +1000 |
---|---|---|
committer | Carlo Zancanaro <carlo@zancanaro.id.au> | 2015-06-05 17:30:46 +1000 |
commit | 05ec409ce96da92d430c4a8e58b08d46f42d667a (patch) | |
tree | 2c3d8925fa9dd86cc265dcfbcb1fe5d8ee97cd0b /src/main/java/au/id/zancanaro/javacheck/state/GeneratedCommand.java | |
parent | 20b1226b4eb10e85497862bd73fe9e9a2f05191d (diff) |
More work on the stateful checker; still not perfect, but it's getting better
Diffstat (limited to 'src/main/java/au/id/zancanaro/javacheck/state/GeneratedCommand.java')
-rw-r--r-- | src/main/java/au/id/zancanaro/javacheck/state/GeneratedCommand.java | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/src/main/java/au/id/zancanaro/javacheck/state/GeneratedCommand.java b/src/main/java/au/id/zancanaro/javacheck/state/GeneratedCommand.java new file mode 100644 index 0000000..90d9a47 --- /dev/null +++ b/src/main/java/au/id/zancanaro/javacheck/state/GeneratedCommand.java @@ -0,0 +1,52 @@ +package au.id.zancanaro.javacheck.state; + +public class GeneratedCommand<State, Args, Result> { + private final int id; + private final Command<State, Args, Result> command; + private final Args args; + + public GeneratedCommand(int id, Command<State, Args, Result> command, Args args) { + this.id = id; + this.command = command; + this.args = args; + } + + public int getId() { + return id; + } + + public Command<State, Args, Result> getCommand() { + return command; + } + + public Args getArgs() { + return args; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + + GeneratedCommand that = (GeneratedCommand) o; + + if (args != null ? !args.equals(that.args) : that.args != null) + return false; + if (command != null ? !command.equals(that.command) : that.command != null) + return false; + + return true; + } + + @Override + public int hashCode() { + int result = command != null ? command.hashCode() : 0; + result = 31 * result + (args != null ? args.hashCode() : 0); + return result; + } + + @Override + public String toString() { + return "#{" + id + "} = " + command + " <- " + args; + } +} |