flutter/packages/flutter_tools/test/integration.shard
Sigurd Meldgaard b23840d044
Only bundle assets and plugins from transitive closure of dependencies (#160443)
Fixes https://github.com/dart-lang/pub/issues/4486
Fixes https://github.com/dart-lang/pub/issues/4473
Fixes https://github.com/flutter/flutter/issues/79261
Fixes https://github.com/flutter/flutter/issues/160142
Fixes https://github.com/flutter/flutter/issues/155242

Use the new `.dart_tool/package_graph.json` file to compute the
dependency graph. Determining

* which are transitive dependencies of the main app's direct and
dev-dependencies, (not other packages from the workspace)
* which of these are only in the transitive set of the direct
dependencies

Bundles assets from dev_dependencies when running `flutter test`, but
not otherwise.
2025-05-19 15:30:58 +00:00
..
debug_adapter [tool] Fix broken comment references and code spans in doc comments (#168498) 2025-05-15 21:14:26 +00:00
isolated [native assets] Roll dependencies (#168139) 2025-05-02 08:19:21 +00:00
test_data Only bundle assets and plugins from transitive closure of dependencies (#160443) 2025-05-19 15:30:58 +00:00
analyze_all_templates_test.dart Remove --template=skeleton and add a placeholder error message instead. (#160695) 2024-12-24 00:02:29 +00:00
analyze_once_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
analyze_size_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
analyze_suggestions_integration_test.dart Add kotlin compatability to build file validation (#167143) 2025-04-18 16:32:08 +00:00
android_e2e_api_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
android_gradle_daemon_cache_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
android_gradle_flutter_source_path_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
android_gradle_java_version_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
android_gradle_legacy_flutter_plugins_strings_in_comments_test.dart Update Java Versions to 21 on CI (#165210) 2025-03-24 22:43:22 +00:00
android_gradle_outputs_app_link_settings_test.dart Convert AppLinkSettings to kotlin (#164391) 2025-03-11 17:00:17 +00:00
android_gradle_print_build_variants_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
android_plugin_compilesdkversion_mismatch_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
android_plugin_example_app_build_test.dart Update gradle memory properties in example and test projects (#163798) 2025-02-21 21:08:20 +00:00
android_plugin_ndkversion_mismatch_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
android_plugin_new_output_dir_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
android_run_flutter_gradle_plugin_tests_test.dart Change FGP unit test expect to match on process result instead of exit code (#168278) 2025-05-05 17:08:14 +00:00
asset_transformation_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
background_isolate_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
bash_entrypoint_test.dart Re-enable bash_entrypoint_test.dart (#165809) 2025-03-24 18:47:17 +00:00
batch_entrypoint_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
break_on_framework_exceptions_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
build_ios_config_only_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
build_macos_config_only_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
cache_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
command_output_test.dart [flutter_tools] remove SkSL bundling and dump skp on compilation. (#162849) 2025-02-10 16:54:02 +00:00
coverage_collection_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
daemon_mode_test.dart apply dart_style 3.0.1 (#160875) 2024-12-27 00:06:41 +00:00
debugger_stepping_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
deferred_components_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
devtools_uri_test.dart Define and use flutterBin consistently across integration.shard. (#159007) 2024-11-18 19:00:04 +00:00
downgrade_upgrade_integration_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
driver_environment_test.dart Propagate environment variables when flutter drive is invoked. (#161452) 2025-01-13 18:48:58 +00:00
exit_code_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
expression_evaluation_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
flutter_attach_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
flutter_build_android_app_project_builddir_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
flutter_build_apk_verbose_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
flutter_build_config_only_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
flutter_build_wasm_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
flutter_build_windows_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
flutter_build_with_compilation_error_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
flutter_gen_test.dart Opt-out of --explicit-package-dependencies for flutter_gen_test. (#163174) 2025-02-13 00:40:30 +00:00
flutter_plugins_dependencies_test.dart [iOS/macOS] Add Xcode error if dev dependencies are incorrect (#165916) 2025-04-11 19:34:38 +00:00
flutter_run_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
flutter_run_with_error_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
forbidden_imports_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
gen_l10n_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
gradle_non_android_plugin_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
hot_reload_errors_test.dart Use recompile-restart instruction when hot restarting on the web (#162616) 2025-02-04 21:24:44 +00:00
hot_reload_test.dart Implement hot reload using the DDC library bundle format (#162498) 2025-02-03 06:10:24 +00:00
hot_reload_with_asset_test.dart Implement hot reload using the DDC library bundle format (#162498) 2025-02-03 06:10:24 +00:00
hot_restart_with_unhandled_exception_test.dart [ Hot Restart ] Fix possible hang due to unhandled exception in UI isolates on hot restart (#165693) 2025-03-26 16:50:07 +00:00
lifetime_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
lldb_init_test.dart Add lldb init file (#164344) 2025-03-06 21:21:52 +00:00
macos_assemble_test.dart Call xcode_backend.dart from macos_assemble.sh (#168108) 2025-05-13 15:57:26 +00:00
observatory_port_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
overall_experience_test.dart [flutter_tools] remove SkSL bundling and dump skp on compilation. (#162849) 2025-02-10 16:54:02 +00:00
plist_parser_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
README.md Added missing code block language in docs (#147481) 2024-05-01 14:44:27 +00:00
shader_compiler_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
stateless_stateful_hot_reload_test.dart Implement hot reload using the DDC library bundle format (#162498) 2025-02-03 06:10:24 +00:00
swift_package_manager_create_app_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
swift_package_manager_create_plugin_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
swift_package_manager_test.dart [SwiftPM] Make 'flutter build ios-framework' generate an empty Package.swift (#161464) 2025-01-14 21:13:15 +00:00
swift_package_manager_utils.dart [tool] Fix deprecated API calls within tool (#168200) 2025-05-13 17:27:22 +00:00
template_manifest_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
test_driver.dart Updated execution path to silently include --start-paused and updated tests (#168400) 2025-05-13 16:47:49 +00:00
test_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
test_utils.dart Refactor writing of package config in tests (#163734) 2025-02-28 08:51:59 +00:00
timeline_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
tool_backend_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
transition_test_utils.dart [tool] Fix broken comment references and code spans in doc comments (#168498) 2025-05-15 21:14:26 +00:00
unit_coverage_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
variable_expansion_windows_test.dart Auto-format Framework (#160545) 2024-12-19 20:06:21 +00:00
variable_expansion_windows.dart Enable avoid_print lint. (#91444) 2021-10-07 16:48:04 -07:00
vmservice_integration_test.dart [flutter_tools] remove SkSL bundling and dump skp on compilation. (#162849) 2025-02-10 16:54:02 +00:00
web_plugin_registrant_test.dart [tool] Fix broken comment references and code spans in doc comments (#168498) 2025-05-15 21:14:26 +00:00
widget_preview_test.dart Reland "[ Widget Preview ] Add initial support for communications over the Dart Tooling Daemon (DTD) (#166698)" (#166877) 2025-04-11 14:55:29 +00:00
xcode_backend_test.dart Call xcode_backend.dart from macos_assemble.sh (#168108) 2025-05-13 15:57:26 +00:00
xcode_dev_dependencies_test.dart [iOS/macOS] Add Xcode error if dev dependencies are incorrect (#165916) 2025-04-11 19:34:38 +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.