anchor.diff:    );
   }
   
  +const String _supportedTesterVersion = '0.0.1-dev9';
  +
  +Future<void> _pubRunTester(String workingDirectory, {
  +  List<String> testPaths,
  +  bool forceSingleCore = false,
  +  int perTestTimeout,
  +}) async {
  +  int cpus;
  +  final String cpuVariable = Platform.environment['CPU']; // CPU is set in cirrus.yml
  +  if (cpuVariable != null) {
  +    cpus = int.tryParse(cpuVariable, radix: 10);
  +    if (cpus == null) {
  +      print('${red}The CPU environment variable, if set, must be set to the integer number of available cores.$reset');
  +      print('Actual value: "$cpuVariable"');
  +      exit(1);
  +    }
  +  } else {
  +    cpus = 2; // Don't default to 1, otherwise we won't catch race conditions.
  +  }
  +  // Integration tests that depend on external processes like chrome
  +  // can get stuck if there are multiple instances running at once.
  +  if (forceSingleCore) {
  +    cpus = 1;
  +  }
  +  final List<String> args = <String>[
  +    'global',
  +    'activate',
  +    'tester',
  +    _supportedTesterVersion
  +  ];
  +  final Map<String, String> pubEnvironment = <String, String>{
  +    'FLUTTER_ROOT': flutterRoot,
  +  };
  +  if (Directory(pubCache).existsSync()) {
  +    pubEnvironment['PUB_CACHE'] = pubCache;
  +  }
  +  await runCommand(
  +    pub,
  +    args,
  +    workingDirectory: workingDirectory,
  +    environment: pubEnvironment,
  +  );
  +  await runCommand(
  +    pub,
  +    <String>[
  +      'global',
  +      'run',
  +      'tester',
  +      '-j$cpus',
  +      '--ci',
  +      if (perTestTimeout != null)
  +        '--timeout=$perTestTimeout'
  +      else
  +        '--timeout=-1',
  +      ...testPaths,
  +    ],
  +    workingDirectory: workingDirectory,
  +    environment: pubEnvironment,
  +  );
  +}
  +
   Future<void> _pubRunTest(String workingDirectory, {
     List<String> testPaths,
     bool enableFlutterToolAsserts = true,
  
positive.code:       final String suffix = Platform.isWindows && subshard == 'commands'
          ? 'permeable'
          : '';
        await _pubRunTest(
          toolsPath,
          testPaths: <String>[path.join(kTest, '$subshard$kDotShard', suffix)],
          tableData: bigqueryApi?.tabledata,
          enableFlutterToolAsserts: true,
          // Detect unit test time regressions (poor time delay handling, etc).
          perTestTimeout: (subshard == 'general') ? const Duration(seconds: 2) : null,
        );
      },
    );
  
  
negative.code: }
  
  Future<void> _runToolTests() async {
    const String kDotShard = '.shard';
    const String kTest = 'test';
    final String toolsPath = path.join(flutterRoot, 'packages', 'flutter_tools');
  