Fix OOM caused by +100mb of dex2oat output

Change-Id: Ic941b2b431283514f14e1e30acbd9171587e7258
diff --git a/src/test/testbase/java/com/android/tools/r8/Dex2OatTestRunResult.java b/src/test/testbase/java/com/android/tools/r8/Dex2OatTestRunResult.java
index 758ef33..52163a9 100644
--- a/src/test/testbase/java/com/android/tools/r8/Dex2OatTestRunResult.java
+++ b/src/test/testbase/java/com/android/tools/r8/Dex2OatTestRunResult.java
@@ -4,16 +4,13 @@
 
 package com.android.tools.r8;
 
-import static org.hamcrest.CoreMatchers.containsString;
-import static org.hamcrest.CoreMatchers.not;
-import static org.hamcrest.MatcherAssert.assertThat;
+import static org.junit.Assert.assertEquals;
 
 import com.android.tools.r8.ToolHelper.ProcessResult;
 import com.android.tools.r8.utils.AndroidApp;
 import java.io.IOException;
 import java.nio.file.Files;
 import java.nio.file.Path;
-import org.hamcrest.Matcher;
 
 public class Dex2OatTestRunResult extends SingleTestRunResult<Dex2OatTestRunResult> {
 
@@ -31,32 +28,20 @@
   }
 
   public Dex2OatTestRunResult assertNoLockVerificationErrors() {
-    assertSuccess();
-    Matcher<? super String> matcher = not(containsString("failed lock verification"));
-    assertThat(
-        errorMessage("Run dex2oat produced lock verification errors.", matcher.toString()),
-        getStdErr(),
-        matcher);
-    return self();
+    return assertInStderr("failed lock verification", false);
   }
 
   public Dex2OatTestRunResult assertNoVerificationErrors() {
-    assertSuccess();
-    Matcher<? super String> matcher = not(containsString("Verification error"));
-    assertThat(
-        errorMessage("Run dex2oat produced verification errors.", matcher.toString()),
-        getStdErr(),
-        matcher);
-    return self();
+    return assertInStderr("Verification error", false);
   }
 
   public Dex2OatTestRunResult assertSoftVerificationErrors() {
+    return assertInStderr("Soft verification failures", true);
+  }
+
+  private Dex2OatTestRunResult assertInStderr(String substring, boolean expected) {
     assertSuccess();
-    Matcher<? super String> matcher = containsString("Soft verification failures");
-    assertThat(
-        errorMessage("Run dex2oat did not produce soft verification errors.", matcher.toString()),
-        getStdErr(),
-        matcher);
+    assertEquals(expected, getStdErr().contains(substring));
     return self();
   }
 
diff --git a/src/test/testbase/java/com/android/tools/r8/ToolHelper.java b/src/test/testbase/java/com/android/tools/r8/ToolHelper.java
index 4ddbdf3..185fd4b 100644
--- a/src/test/testbase/java/com/android/tools/r8/ToolHelper.java
+++ b/src/test/testbase/java/com/android/tools/r8/ToolHelper.java
@@ -2716,11 +2716,13 @@
       builder.append("\n");
       builder.append("STDOUT: ");
       builder.append("\n");
-      builder.append(stdout);
+      builder.append(
+          stdout.length() > 50000 ? "<omitted " + stdout.length() + " characters>" : stdout);
       builder.append("\n");
       builder.append("STDERR: ");
       builder.append("\n");
-      builder.append(stderr);
+      builder.append(
+          stderr.length() > 50000 ? "<omitted " + stderr.length() + " characters>" : stderr);
       builder.append("\n");
       return builder.toString();
     }