From b77b0b3969a2c5258455a1fbaf7f314ec995b56d Mon Sep 17 00:00:00 2001
From: Matthew Hague <matthew.hague@rhul.ac.uk>
Date: Thu, 12 Nov 2020 17:35:30 +0000
Subject: [PATCH] Add convenience method for building interactions

---
 .../rhul/cs/javatester/SubmissionWrapper.java | 24 +++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/src/main/java/uk/ac/rhul/cs/javatester/SubmissionWrapper.java b/src/main/java/uk/ac/rhul/cs/javatester/SubmissionWrapper.java
index f40e763..05d791c 100644
--- a/src/main/java/uk/ac/rhul/cs/javatester/SubmissionWrapper.java
+++ b/src/main/java/uk/ac/rhul/cs/javatester/SubmissionWrapper.java
@@ -498,6 +498,30 @@ public class SubmissionWrapper implements AutoCloseable {
                      .toArray(String[]::new);
     }
 
+    /**
+     * Construct a default interaction with default fail response for an output
+     */
+    public static String[] expectedOutput(String output) {
+        return new String[] {
+            "> " + output,
+            "Expected the output '" + output + "'."
+        };
+    }
+
+    /**
+     * Construct a default interaction with fail response for an output
+     */
+    public static String[] expectedOutput(String output, String failMsg) {
+        return new String[] { "> " + output, failMsg };
+    }
+
+    /**
+     * Construct an interaction for an input
+     */
+    public static String[] input(String input) {
+        return new String[] { "< " + input };
+    }
+
     private void recordInteractionOutputLine(String line) {
         interactionBuffer.append("> " + line + "\n");
         outputLines.add(line);
-- 
GitLab