diff --git a/pubspec.yaml b/pubspec.yaml
index fee6433..6faac85 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,5 +1,5 @@
 name: stream_channel
-version: 1.6.2
+version: 1.6.3-dev
 description: An abstraction for two-way communication channels.
 author: Dart Team <misc@dartlang.org>
 homepage: https://github.com/dart-lang/stream_channel
@@ -9,4 +9,4 @@
   async: '>=1.11.0 <3.0.0'
   stack_trace: '^1.0.0'
 dev_dependencies:
-  test: '^0.12.18'
+  test: '^0.12.28'
diff --git a/test/disconnector_test.dart b/test/disconnector_test.dart
index cd1300c..5b72574 100644
--- a/test/disconnector_test.dart
+++ b/test/disconnector_test.dart
@@ -8,8 +8,6 @@
 import 'package:stream_channel/stream_channel.dart';
 import 'package:test/test.dart';
 
-import 'utils.dart';
-
 void main() {
   var streamController;
   var sinkController;
diff --git a/test/isolate_channel_test.dart b/test/isolate_channel_test.dart
index b3b252e..66834ca 100644
--- a/test/isolate_channel_test.dart
+++ b/test/isolate_channel_test.dart
@@ -8,8 +8,6 @@
 import 'package:stream_channel/stream_channel.dart';
 import 'package:test/test.dart';
 
-import 'utils.dart';
-
 void main() {
   var receivePort;
   var sendPort;
diff --git a/test/multi_channel_test.dart b/test/multi_channel_test.dart
index b115673..2a87caf 100644
--- a/test/multi_channel_test.dart
+++ b/test/multi_channel_test.dart
@@ -5,8 +5,6 @@
 import 'package:stream_channel/stream_channel.dart';
 import 'package:test/test.dart';
 
-import 'utils.dart';
-
 void main() {
   var controller;
   var channel1;
diff --git a/test/stream_channel_completer_test.dart b/test/stream_channel_completer_test.dart
index e08dd8a..8d83005 100644
--- a/test/stream_channel_completer_test.dart
+++ b/test/stream_channel_completer_test.dart
@@ -7,8 +7,6 @@
 import 'package:stream_channel/stream_channel.dart';
 import 'package:test/test.dart';
 
-import 'utils.dart';
-
 void main() {
   var completer;
   var streamController;
diff --git a/test/utils.dart b/test/utils.dart
deleted file mode 100644
index e533895..0000000
--- a/test/utils.dart
+++ /dev/null
@@ -1,19 +0,0 @@
-// Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
-// for details. All rights reserved. Use of this source code is governed by a
-// BSD-style license that can be found in the LICENSE file.
-
-import 'dart:async';
-
-/// Returns a [Future] that completes after pumping the event queue [times]
-/// times.
-///
-/// By default, this should pump the event queue enough times to allow any code
-/// to run, as long as it's not waiting on some external event.
-Future pumpEventQueue([int times = 20]) {
-  if (times == 0) return new Future.value();
-  // Use [new Future] future to allow microtask events to finish. The [new
-  // Future.value] constructor uses scheduleMicrotask itself and would therefore
-  // not wait for microtask callbacks that are scheduled after invoking this
-  // method.
-  return new Future(() => pumpEventQueue(times - 1));
-}
diff --git a/test/with_close_guarantee_test.dart b/test/with_close_guarantee_test.dart
index bed6f0d..a6527a7 100644
--- a/test/with_close_guarantee_test.dart
+++ b/test/with_close_guarantee_test.dart
@@ -8,8 +8,6 @@
 import 'package:stream_channel/stream_channel.dart';
 import 'package:test/test.dart';
 
-import 'utils.dart';
-
 final _delayTransformer = new StreamTransformer.fromHandlers(
     handleData: (data, sink) => new Future.microtask(() => sink.add(data)),
     handleDone: (sink) => new Future.microtask(() => sink.close()));
diff --git a/test/with_guarantees_test.dart b/test/with_guarantees_test.dart
index 07dd8e5..e1302f6 100644
--- a/test/with_guarantees_test.dart
+++ b/test/with_guarantees_test.dart
@@ -7,8 +7,6 @@
 import 'package:stream_channel/stream_channel.dart';
 import 'package:test/test.dart';
 
-import 'utils.dart';
-
 void main() {
   var streamController;
   var sinkController;
