@@ -458,23 +458,19 @@ Future<Set<String>> _filterCoveragePackages(
458458 List <RegExp >? coveragePackages,
459459 String ? coverageLcov,
460460) async {
461- if (coveragePackages == null || coveragePackages.isEmpty) {
462- if (coverageLcov == null ) {
463- // If no filters were provided and we using json workflow, report coverage
464- // for all packages. This is required to maintain backward compatibility
465- // particularly in cases where coverage is required for files outside of
466- // the lib directory. See https://github.com/dart-lang/test/issues/2581
467- return {};
468- }
469- return workspacePackageNames (await currentPackage);
461+ if (coverageLcov == null && coveragePackages == null ) {
462+ // If no filters were provided and we using json workflow, report coverage
463+ // for all packages. This is required to maintain backward compatibility
464+ // particularly in cases where coverage is required for files outside of
465+ // the lib directory. See https://github.com/dart-lang/test/issues/2581
466+ return {};
470467 }
471-
472- if (coveragePackages.isEmpty) {
468+ if (coveragePackages == null || coveragePackages.isEmpty) {
473469 return workspacePackageNames (await currentPackage);
470+ } else {
471+ return (await currentPackageConfig).packages
472+ .map ((package) => package.name)
473+ .where ((name) => coveragePackages.any ((re) => re.hasMatch (name)))
474+ .toSet ();
474475 }
475-
476- return (await currentPackageConfig).packages
477- .map ((package) => package.name)
478- .where ((name) => coveragePackages.any ((re) => re.hasMatch (name)))
479- .toSet ();
480476}
0 commit comments