flutter/packages/flutter_tools/test/integration.shard
Zachary Anderson 6a6874ecf9
Update Android minSdkVersion to 21 (#142267)
This PR increases Android's `minSdkVersion` to 21.

There are two changes in this PR aside from simply increasing the number
from 19 to 21 everywhere.

First, tests using `flutter_gallery` fail without updating the
lockfiles. The changes in the PR are the results of running
`dev/tools/bin/generate_gradle_lockfiles.dart` on that app.

Second, from
[here](https://developer.android.com/build/multidex#mdex-pre-l):
> if your minSdkVersion is 21 or higher, multidex is enabled by default
and you don't need the multidex library.

As a result, the `multidex` option everywhere is obsolete. This PR
removes all logic and tests related to that option that I could find.
`Google testing` and `customer_tests` pass on this PR, so it seems like
this won't be too breaking if it is at all. If needed I'll give this
some time to bake in the framework before landing the flutter/engine
PRs.

Context: https://github.com/flutter/flutter/issues/138117,
https://github.com/flutter/flutter/issues/141277, b/319373605
2024-01-29 09:49:09 -08:00
..
debug_adapter Typo fix in dartdoc in tool test (#139386) 2023-12-01 14:24:09 -05:00
test_data Update Android minSdkVersion to 21 (#142267) 2024-01-29 09:49:09 -08:00
analyze_all_templates_test.dart [flutter_tools] Use process matcher for multidex test (#127996) 2023-06-01 22:24:08 +00:00
analyze_once_test.dart [flutter_tools] update analyze_once_test.dart to be null-safe (#141790) 2024-01-21 07:54:05 +00:00
analyze_size_test.dart [flutter_tools] Use process matcher for multidex test (#127996) 2023-06-01 22:24:08 +00:00
analyze_suggestions_integration_test.dart [flutter_tools] cache flutter sdk version to disk (#124558) 2023-06-15 00:20:30 +00:00
android_e2e_api_test.dart [flutter_tools] Migrate more integration tests to process result matcher (#128737) 2023-06-15 13:25:32 -07:00
android_gradle_deprecated_plugin_apply_test.dart Reland "Warn when Gradle plugins are applied using the legacy apply script method (#140103) 2023-12-19 16:03:23 +00:00
android_gradle_java_version_test.dart [flutter_tools] Migrate more integration tests to process result matcher (#128737) 2023-06-15 13:25:32 -07:00
android_gradle_outputs_app_link_settings_test.dart [deep link] Update a gradle task to add flag check and intent filter check to the AppLinkSettings (#141231) 2024-01-12 10:36:26 -08:00
android_gradle_print_build_variants_test.dart Add vmservice for android build options (#123034) 2023-04-18 18:16:09 +00:00
android_plugin_compilesdkversion_mismatch_test.dart Adapt wording for required Android SDK for plugins (#140043) 2023-12-14 05:45:15 +00:00
android_plugin_example_app_build_test.dart Bump gradle heap size limit in *everywhere* (#134665) 2023-09-13 10:36:24 -07:00
android_plugin_ndkversion_mismatch_test.dart Use Flutter app project's NDK version from FFI plugin (#131141) 2023-07-31 10:09:24 +00:00
android_plugin_new_output_dir_test.dart let the plugin's output generated in flutter/.android/plugins_build_output/${androidPlugin.name} (#94645) 2022-09-14 15:47:16 +00:00
android_plugin_skip_unsupported_test.dart Add support for Gradle Kotlin DSL (#140744) 2024-01-12 02:20:06 +00:00
background_isolate_test.dart Fix hot-restart test by ensuring updated timestmamp is in the future. (#97247) 2022-01-25 14:18:33 -08:00
bash_entrypoint_test.dart [flutter_tools] do not try to build tool from dart.sh (#129186) 2023-11-03 00:42:25 +00:00
batch_entrypoint_test.dart [flutter_tools] print out the unzipping method used by update_dart_sdk.ps1 (#133364) 2023-08-31 21:06:47 +00:00
break_on_framework_exceptions_test.dart Fixed a lot of typos (#141431) 2024-01-12 22:10:25 +00:00
build_ios_config_only_test.dart [flutter_tools] Migrate more integration tests to process result matcher (#128737) 2023-06-15 13:25:32 -07:00
build_macos_config_only_test.dart Migrate more integration tests to process result matcher (#130994) 2023-07-20 21:02:12 +00:00
build_preview_test.dart [flutter_tools] move build_preview_test from commands/permeable to integration shard (#136912) 2023-10-19 22:03:04 +00:00
cache_test.dart Remove redundant arguments passed to redirecting factory constructors (#115497) 2022-11-17 00:47:14 +00:00
command_output_test.dart flutter config --list (#135401) 2023-09-27 07:02:13 +00:00
coverage_collection_test.dart migrate some file to null safety (#92957) 2021-12-16 11:39:12 -08:00
daemon_mode_test.dart [flutter_tools] migrate some integration tests to null safety (#103560) 2022-05-13 09:39:10 -07:00
debugger_stepping_test.dart Enable no_leading_underscores_for_local_identifiers (#96422) 2022-01-21 14:43:59 -08:00
deferred_components_test.dart Migrate more integration tests to process result matcher (#130994) 2023-07-20 21:02:12 +00:00
deprecated_gradle_settings_test.dart Revert automated changes made to deprecated settings.gradle (plugins.each) (#140037) 2023-12-20 15:45:08 +00:00
devtools_uri_test.dart Reland "Fix issue where DevTools would not be immediately available when using --start-paused (#126698)" (#129368) 2023-06-28 00:16:13 +05:30
downgrade_upgrade_integration_test.dart [flutter_tools] Fix flutter upgrade not finding git tags (#133778) 2023-08-31 22:01:10 +00:00
exit_code_test.dart [flutter_tools] Migrate more integration tests to process result matcher (#128737) 2023-06-15 13:25:32 -07:00
expression_evaluation_test.dart Prevent tests from producing dill files alongside the test file (#115075) 2022-11-10 20:00:19 +00:00
flutter_attach_test.dart Stop serving Observatory by default (#122419) 2023-03-23 12:52:30 -04:00
flutter_build_android_app_project_builddir_test.dart [flutter_tools] migrate some integration tests to null safety (#103560) 2022-05-13 09:39:10 -07:00
flutter_build_apk_verbose_test.dart Correctly propagate verbosity to subtasks in flutter.gradle (#117897) 2023-01-04 09:54:21 +00:00
flutter_build_config_only_test.dart [flutter_tools] cache flutter sdk version to disk (#124558) 2023-06-15 00:20:30 +00:00
flutter_build_wasm_test.dart [flutter_tools] Migrate more integration tests to process result matcher (#128737) 2023-06-15 13:25:32 -07:00
flutter_build_windows_test.dart Enable native compilation for windows-arm64 (#141930) 2024-01-26 00:08:20 +00:00
flutter_build_with_compilation_error_test.dart [flutter_tools] Migrate more integration tests to process result matcher (#128737) 2023-06-15 13:25:32 -07:00
flutter_gen_test.dart [flutter_tools] migrate some integration tests to null safety (#103560) 2022-05-13 09:39:10 -07:00
flutter_run_test.dart [flutter_tools] Include mode in app.start event, and forward app.start to DAP clients (#121239) 2023-04-05 05:39:09 +00:00
flutter_run_with_error_test.dart Reland "Remove references to Observatory (#118577)" (#121606) 2023-02-28 11:57:04 -05:00
forbidden_imports_test.dart Revert "Allow Flutter golden file tests to be flaky (#114450)" (#114902) 2022-11-08 09:26:55 -08:00
gen_l10n_test.dart Gen l10n add named argument option (#138663) 2024-01-05 21:28:08 +00:00
gradle_non_android_plugin_test.dart [flutter_tools] Use process matcher for multidex test (#127996) 2023-06-01 22:24:08 +00:00
hot_reload_errors_test.dart [flutter_tools] migrate some integration tests to null safety (#103560) 2022-05-13 09:39:10 -07:00
hot_reload_test.dart Simplify null check. (#117026) 2023-01-03 20:51:48 +00:00
hot_reload_with_asset_test.dart [flutter_tools] migrate some integration tests to null safety (#103560) 2022-05-13 09:39:10 -07:00
lifetime_test.dart [flutter_tools] migrate some integration tests to null safety (#103560) 2022-05-13 09:39:10 -07:00
native_assets_test.dart Reapply "Native assets: roll deps" (#141748) (#141864) 2024-01-22 10:42:15 +00:00
observatory_port_test.dart Add spaces after flow control statements (#126320) 2023-05-15 11:07:30 +02:00
overall_experience_test.dart Native assets support for MacOS and iOS (#130494) 2023-09-10 08:07:13 +00:00
plist_parser_test.dart [flutter_tools] ensure processUtils reports exit code in ProcessExceptions (#136672) 2023-10-30 19:51:26 +00:00
README.md Allow plugins to use compileSdkPreview (#131901) 2023-12-12 20:06:04 +00:00
shader_compiler_test.dart [flutter_tools] add uint compilation test (#115317) 2022-11-15 01:39:59 +00:00
stateless_stateful_hot_reload_test.dart Remove test that verifies we can switch to stateless (#120390) 2023-02-09 20:58:57 +00:00
template_manifest_test.dart Simplify null check. (#117026) 2023-01-03 20:51:48 +00:00
test_driver.dart Remove the fast reassemble / single widget reload feature (#132255) 2023-08-10 21:48:06 +00:00
test_test.dart Fix mac tool_integration_tests with Xcode 15 (#133217) 2023-08-24 17:03:17 +00:00
test_utils.dart Update dev/bots/test.dart (and friends) to provide --local-engine-host. (#132354) 2023-08-14 13:21:14 -07:00
timeline_test.dart [flutter_tools] timeline_test.dart flaky (#116667) 2023-01-03 20:44:53 +00:00
tool_backend_test.dart Update flutter_tools/bin/*.(dart|sh) to provide, if set, --local-engine-host. (#132336) 2023-08-10 15:25:57 -07:00
transition_test_utils.dart Reland "Native assets support for Linux" (#135097) 2023-09-22 06:07:06 +00:00
unit_coverage_test.dart [flutter_tools] migrate some integration tests to null safety (#103560) 2022-05-13 09:39:10 -07:00
variable_expansion_windows_test.dart [flutter_tools] migrate some integration tests to null safety (#103560) 2022-05-13 09:39:10 -07:00
variable_expansion_windows.dart
vmservice_integration_test.dart Removes ios universal link vmservices and let xcodeproject to dump js… (#133709) 2023-08-31 21:50:54 +00:00
web_plugin_registrant_test.dart Migrate more integration tests to process result matcher (#130994) 2023-07-20 21:02:12 +00:00
xcode_backend_test.dart [Reland] Skip injecting Bonjour settings when port publication is disabled (#136842) 2023-10-19 17:38:52 +00:00

Integration tests

These tests are not hermetic, and use the actual Flutter SDK. While they don't require actual devices, they run flutter_tester to test Dart VM and Flutter integration.

Use this command to run (from the flutter_tools directory):

../../bin/cache/dart-sdk/bin/dart run test test/integration.shard

You need to have downloaded the Dart SDK in your Flutter clone for this to work. Running ../../bin/flutter will automatically download it.

Coverage exclusion

These tests are expensive to run and do not give meaningful coverage information for the flutter tool (since they are black-box tests that run the tool as a subprocess, rather than being unit tests). For this reason, they are in a separate shard when running on continuous integration and are not run when calculating coverage.

Adding new test files

When adding a new test file make sure that it ends with _test.dart, or else it will not be run.