[testing] Simplify stream handling for buildbucket responses

Follow up to 3b64509 to apply post-submit review comments.

Change-Id: I4a573312777fea4701abc3b3c9efbb2f8b7971ee
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/192929
Auto-Submit: Alexander Thomas <athom@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
Commit-Queue: William Hesse <whesse@google.com>
Reviewed-by: William Hesse <whesse@google.com>
This commit is contained in:
Alexander Thomas 2021-03-25 09:56:03 +00:00 committed by commit-bot@chromium.org
parent 3b645094f5
commit a745657050

View file

@ -219,10 +219,10 @@ Future<BuildSearchResult> searchForBuild(String builder, String commit) async {
request.headers.add(HttpHeaders.contentTypeHeader, ContentType.json.mimeType);
request.write(requestBody);
var response = await request.close();
var responseString =
await response.cast<List<int>>().transform(const Utf8Decoder()).join();
var responseString = await const Utf8Decoder().bind(response).join();
client.close();
var object = jsonDecode(responseString.substring(4)) as Map<String, dynamic>;
// Remove XSSI protection prefix )]}'\n before parsing the response.
var object = jsonDecode(responseString.substring(5)) as Map<String, dynamic>;
var builds = object["builds"] as List<dynamic>;
if (builds == null || builds.isEmpty) {
throw NoResultsForCommitException(