blob: 841bdd72ffb6c6b0c0fffbcb890e9469b2b3a568 [file] [log] [blame]
// Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
import 'dart:convert';
import 'dart:io';
import 'package:path/path.dart' as p;
import 'live_suite_controller.dart';
/// Collects coverage and outputs to the [coveragePath] path.
Future<void> writeCoverage(
String coveragePath, LiveSuiteController controller) async {
var suite = controller.liveSuite.suite;
var coverage = await controller.liveSuite.suite.gatherCoverage();
final outfile = File(p.join(coveragePath,
'${suite.path}.${suite.platform.runtime.name.toLowerCase()}.json'))
..createSync(recursive: true);
final out = outfile.openWrite();
out.write(json.encode(coverage));
await out.flush();
await out.close();
}