anchor.diff:  };
   bool _isTestee() {
     return Platform.environment.containsKey(_TESTEE_ENV_KEY);
  +}
  +
  +const String _SKY_SHELL_ENV_KEY = 'SERVICE_TEST_SKY_SHELL';
  +bool _shouldLaunchSkyShell() {
  +  return Platform.environment.containsKey(_SKY_SHELL_ENV_KEY);
  +}
  +String _skyShellPath() {
  +  return Platform.environment[_SKY_SHELL_ENV_KEY];
   }
   
   class _SerivceTesteeRunner {
  
positive.code:                                 bool trace_compiler) {
      assert(pause_on_start != null);
      assert(pause_on_exit != null);
      assert(trace_service != null);
      // TODO(turnidge): I have temporarily turned on service tracing for
      // all tests to help diagnose flaky tests.
      trace_service = true;
      String dartExecutable = Platform.executable;
      var fullArgs = [];
      if (trace_service) {
        fullArgs.add('--trace-service');
  
negative.code: bool _isWebSocketDisconnect(e) {
    return e is NetworkRpcException;
  }
  
  
  const String _TESTEE_ENV_KEY = 'SERVICE_TEST_TESTEE';
  const Map<String, String> _TESTEE_SPAWN_ENV = const {
  