anchor.diff:  import 'dart:async';
   import 'dart:convert' show UTF8;
   
  +import 'package:async/async.dart' show StreamSplitter;
   import 'package:test/test.dart';
   
   import 'package:syncbase/src/testing_instrumentation.dart' as testing;
  
positive.code:     // Check that we see all changes made since we started watching.
      await checkWatch(watchStream, expectedChanges);
      // Check that the empty resume marker watch also sees initial changes.
      await checkWatch(watchStreamWithInitialState,
          []..addAll(initialChanges)..addAll(expectedChanges));
    });
  
  
negative.code:     var watchStream = db.watch(table.name, prefix, resumeMarker);
  
      // Also start watching with empty resume marker.
      // Split into two streams to allow verifying at different times.
      var watchStreamsWithInitialState = StreamSplitter.splitFrom(
          db.watch(table.name, prefix), 2);
  
      // Wait for the empty resume marker watch to see initial changes.
      await checkWatch(watchStreamsWithInitialState[0], initialChanges);
  
      // Perform some operations after we've started watching.
      var expectedChanges = new List<WatchChange>();
  