anchor.diff:    test('filter pass', () {
       var controller = new StreamController<HttpRequest>();
       var router = new Router(controller.stream);
  -    var testReq = new HttpRequestMock(new Uri('/foo'));
  +    var testReq = new HttpRequestMock(Uri.parse('/foo'));
       router.filter('/foo', expectAsync1((req) {
         expect(req, testReq);
         return new Future.value(true);
  
positive.code:   test('serve 2', () {
      var controller = new StreamController<HttpRequest>();
      var router = new Router(controller.stream);
      var testReq = new HttpRequestMock(new Uri('/bar'));
      router.serve('/foo').listen(expectAsync1((req) {}, count: 0));
      router.serve('/bar').listen(expectAsync1((req) {
        expect(req, testReq);
  
negative.code: import 'dart:async';
  import 'dart:collection';
  import 'dart:io';
  
  class HttpRequestMock extends Mock implements HttpRequest {
    Uri uri;
    String method;
    HttpResponseMock response = new HttpResponseMock();
  
    HttpRequestMock(this.uri, {this.method});
  }
  
  class HttpResponseMock extends Mock implements HttpResponse {
    int statusCode;
    var _onClose;
  
    Future close() {
      if (_onClose != null) {
        _onClose();
      }
      return new Future.value();
    }
  }
  
  