Don't check multitests for dartfmt in the presubmit.

Change-Id: Icb6f5f2b170dc3413d7d8de5dbd3001f3b8a053c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/106728
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Jacob Richman <jacobr@google.com>
Commit-Queue: Jacob Richman <jacobr@google.com>
Commit-Queue: Bob Nystrom <rnystrom@google.com>
diff --git a/PRESUBMIT.py b/PRESUBMIT.py
index 8bf1471..520d015 100644
--- a/PRESUBMIT.py
+++ b/PRESUBMIT.py
@@ -77,6 +77,15 @@
     return []
 
   def HasFormatErrors(filename=None, contents=None):
+    # Don't look for formatting errors in multitests. Since those are very
+    # sensitive to whitespace, many cannot be formatted with dartfmt without
+    # breaking them.
+    if filename and filename.endswith('_test.dart'):
+      with open(filename) as f:
+        contents = f.read()
+        if '//#' in contents:
+          return False
+
     args = [prebuilt_dartfmt, '--set-exit-if-changed']
     if not contents:
       args += [filename, '-n']