diff --git a/moor/tool/coverage.dart b/moor/tool/coverage.dart index dc7d267e..495853c9 100644 --- a/moor/tool/coverage.dart +++ b/moor/tool/coverage.dart @@ -6,6 +6,8 @@ import 'package:grinder/grinder_sdk.dart'; import 'package:coverage/coverage.dart'; import 'package:path/path.dart'; +import 'format_coverage.dart' as fc; + const int _vmPort = 9876; Future main(List args) async { @@ -31,13 +33,5 @@ Future main(List args) async { print('coverage collected - formatting as lcov'); print('formatting to .lcov format'); - await Pub.runAsync('coverage:format_coverage', arguments: [ - '--lcov', - '--packages=.packages', - '--report-on=lib', - '-i', - 'coverage.json', - '-o', - 'lcov.info' - ]); + await fc.main(); } diff --git a/moor/tool/format_coverage.dart b/moor/tool/format_coverage.dart new file mode 100644 index 00000000..90634458 --- /dev/null +++ b/moor/tool/format_coverage.dart @@ -0,0 +1,25 @@ +import 'dart:io'; + +import 'package:coverage/coverage.dart'; + +Future main() async { + Directory.current = Directory.current.parent; + + final resolver = Resolver( + packagesPath: 'moor/.packages', + ); + + final coverage = await parseCoverage([File('moor/coverage.json')], 1); + + // report coverage for the moor and moor_generator package + final lcov = await LcovFormatter( + resolver, + reportOn: [ + 'moor/lib/', + 'moor_generator/lib', + ], + basePath: '.' + ).format(coverage); + + File('moor/lcov.info').writeAsStringSync(lcov); +} \ No newline at end of file diff --git a/tool/upload_coverage.sh b/tool/upload_coverage.sh index f0c2eb71..1141fb46 100755 --- a/tool/upload_coverage.sh +++ b/tool/upload_coverage.sh @@ -2,5 +2,5 @@ if [ "$PKG" == "moor" ]; then pushd moor - pub run coveralls lcov.info + bash <(curl -s https://codecov.io/bash) -f lcov.info fi \ No newline at end of file