[pigeon] Convert run_tests.sh to Dart #3075
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This finishes the conversion of run_tests.sh to run_tests.dart:
test_pigeon_androidand its supporting logic, which has actually been dead code for quite a while. (Per offline discussion, we don't think the custom lint/error checks it used to do have enough value to rebuild in the new structure at this time. If we were to do that later, it would almost certainly take a very different form, such as Gradle plugins intest_plugin.)test_pigeon_dart/run_dart_compilation_tests, which analyzed Dart output, into the existing Dart unit tests test, which already had the logic to analyze Dart output. This reduces the number of types of tests by one.test_command_lineinto the Dart script.run_ios_legacy_unitteststo Dart for now, since we still haven't resolved the CI issues.run_android_unittestsinto the Dart script.Platform.isMacOSsection in the Dart script, instead of the Dart script running nothing on macOS by default, since the old behavior was only to avoid the CI double-running all of the tests (once from running run_tests.sh without arguments, and once from running run_tests.dart without arguments).This allows us to completely remove run_tests.sh, and therefore also remove the special-casing of
pigeonin the Linux CI, since the Dart script can internally no-op on Linux. This PR doesn't attempt to address flutter/flutter#115393, but it does make it very easy to do so. That will be done in a follow-up PR.Fixes flutter/flutter#85068
Pre-launch Checklist
dart format.)[shared_preferences]pubspec.yamlwith an appropriate new version according to the pub versioning philosophy, or this PR is exempt from version changes.CHANGELOG.mdto add a description of the change, following repository CHANGELOG style.///).