test/langtools/jdk/jshell/UITesting.java
changeset 48275 b2190c70a1ac
parent 47216 71c04702a3d5
child 48347 4f9683bf0923
--- a/test/langtools/jdk/jshell/UITesting.java	Thu Dec 07 11:55:06 2017 -0800
+++ b/test/langtools/jdk/jshell/UITesting.java	Thu Dec 07 13:23:18 2017 -0800
@@ -41,6 +41,11 @@
 
 public class UITesting {
 
+    protected static final String TAB = "\011";
+    protected static final String INTERRUPT = "\u0003";
+    protected static final String BELL = "\u0007";
+    protected static final String PROMPT = "\u0005";
+    protected static final String REDRAW_PROMPT = "\n\r" + PROMPT;
     private final boolean laxLineEndings;
 
     public UITesting() {
@@ -100,10 +105,10 @@
         runner.start();
 
         try {
-            waitOutput(out, "\u0005");
+            waitOutput(out, PROMPT);
             test.test(inputSink, out);
         } finally {
-            inputSink.write("\003\003/exit");
+            inputSink.write(INTERRUPT + INTERRUPT + "/exit");
 
             runner.join(1000);
             if (runner.isAlive()) {
@@ -198,6 +203,10 @@
         return resources.getString(key);
     }
 
+    protected String resource(String key) {
+        return Pattern.quote(getResource(key).replaceAll("\t", "    "));
+    }
+
     protected String getMessage(String key, Object... args) {
         return MessageFormat.format(resources.getString(key), args);
     }