Index: runtime/tests/dart/src/EchoServerStreamReadUntilTest.dart |
diff --git a/runtime/tests/dart/src/EchoServerStreamReadUntilTest.dart b/runtime/tests/dart/src/EchoServerStreamReadUntilTest.dart |
index e8df2282668230572adde6a9bc793a730bbfa616..cca1ed53ea9ce04bc2565063622d7c8b1dc53275 100644 |
--- a/runtime/tests/dart/src/EchoServerStreamReadUntilTest.dart |
+++ b/runtime/tests/dart/src/EchoServerStreamReadUntilTest.dart |
@@ -3,6 +3,11 @@ |
// BSD-style license that can be found in the LICENSE file. |
// |
// Echo server test program to test socket stream read until functionality. |
+// |
+// VMOptions= |
+// VMOptions=--short_socket_read |
+// VMOptions=--short_socket_write |
+// VMOptions=--short_socket_read --short_socket_write |
main() { |
EchoServerStreamReadUntilTest.testMain(); |
@@ -146,12 +151,16 @@ class EchoServer extends Isolate { |
for (int i = 0; i < MSGSIZE - 1; i++) { |
Expect.equals(EchoServerGame.FIRSTCHAR + i, buffer[i]); |
} |
- outputStream.write(buffer, 0, buffer.length, null); |
- inputStream.readUntil(PATTERN2, dataReceived); |
+ void next() { |
+ inputStream.readUntil(PATTERN2, dataReceived); |
+ } |
+ bool done = outputStream.write(buffer, 0, buffer.length, next); |
+ if (done) { |
+ next(); |
+ } |
} else { |
Expect.equals(1, buffer.length); |
outputStream.write(buffer, 0, buffer.length, null); |
- inputStream.readUntil(PATTERN2, dataReceived); |
} |
} |