anchor.diff:      if (step == TestStep.starting && entry == 'Building flutter tool...') {
         // ignore this line
         step = TestStep.buildingFlutterTool;
  +    } else if (step == TestStep.testPassed && entry.contains('Collecting coverage information...')) {
  +      // ignore this line
       } else if (step.index < TestStep.runningPubGet.index && entry == 'Running "flutter packages get" in automated_tests...') {
         // ignore this line
         step = TestStep.runningPubGet;
  
positive.code:           .replaceAll('_xyzzy', 'owner')
        );
        final int interfaceChange = await runTest(); // run test again with interface changed
        final Map<String, dynamic> data = <String, dynamic>{
          'without_change_elapsed_time_ms': withoutChange,
          'implementation_change_elapsed_time_ms': implementationChange,
          'interface_change_elapsed_time_ms': interfaceChange,
        };
        return TaskResult.success(data, benchmarkScoreKeys: data.keys.toList());
      } finally {
  
negative.code:   testPassed,
  }
  
  Future<int> runTest({bool coverage = false}) async {
    final Stopwatch clock = Stopwatch()..start();
    final List<String> arguments = <String>[
      'test',
    ];
    if (coverage) {
      arguments.add('--coverage');
    }
    arguments.add(path.join('flutter_test', 'trivial_widget_test.dart'));
    final Process analysis = await startProcess(
      path.join(flutterDirectory.path, 'bin', 'flutter'),
      arguments,
      workingDirectory: path.join(flutterDirectory.path, 'dev', 'automated_tests'),
    );
    int badLines = 0;
  