[ci] Split up integration.shard record_use_test.dart#185022
Conversation
There was a problem hiding this comment.
Code Review
This pull request refactors the record use integration tests by splitting the original test file into dedicated files for build and run operations and centralizing shared logic in a utility file. The review feedback highlights a typo in an error message, suggests improving error message clarity by using directory paths instead of objects, and recommends using package name constants instead of hardcoded strings to maintain a single source of truth and ensure consistency.
| .toList(); | ||
|
|
||
| if (manifestFiles.isEmpty) { | ||
| throw Exception('Expected a `AssetManifest.bin` to be avilable in the $buildTargetDir.'); |
There was a problem hiding this comment.
Typo: 'avilable' should be 'available'. Additionally, using buildTargetDir.path in the error message is preferred over the Directory object's toString() for better clarity.
| throw Exception('Expected a `AssetManifest.bin` to be avilable in the $buildTargetDir.'); | |
| throw Exception('Expected a AssetManifest.bin to be available in the ${buildTargetDir.path}.'); |
References
- Error messages should be useful: Every error message is an opportunity to make someone love our product. (link)
| const id1Key = 'packages/record_use_test_package/data/translations.json'; | ||
| expect(manifest.containsKey(id1Key), isTrue, reason: 'id1.json should be present'); |
There was a problem hiding this comment.
Use the packageNameDependency constant instead of hardcoding the package name string. Also, update the reason in the expect call to correctly refer to translations.json instead of id1.json.
| const id1Key = 'packages/record_use_test_package/data/translations.json'; | |
| expect(manifest.containsKey(id1Key), isTrue, reason: 'id1.json should be present'); | |
| const id1Key = 'packages/$packageNameDependency/data/translations.json'; | |
| expect(manifest.containsKey(id1Key), isTrue, reason: 'translations.json should be present'); |
References
- Avoid duplicating state: Keep only one source of truth. (link)
flutter/flutter@2fa45e0...c1b14e9 2026-04-14 [email protected] Rebuild flutter tool skill (flutter/flutter#184975) 2026-04-14 [email protected] Roll Skia from 0851d988db03 to 4c382df6a25a (1 revision) (flutter/flutter#185025) 2026-04-14 [email protected] Roll Dart SDK from 5504504b38c2 to ee5afcef0596 (1 revision) (flutter/flutter#185024) 2026-04-14 [email protected] [ci] Split up integration.shard record_use_test.dart (flutter/flutter#185022) 2026-04-14 [email protected] Roll Skia from d34c84df4c37 to 0851d988db03 (3 revisions) (flutter/flutter#185012) 2026-04-14 [email protected] [record_use] Add recorded uses to link hooks (flutter/flutter#184869) 2026-04-14 [email protected] Roll Skia from 0e98a9c635bb to d34c84df4c37 (5 revisions) (flutter/flutter#185009) 2026-04-14 [email protected] Roll Dart SDK from ef28089d6533 to 5504504b38c2 (3 revisions) (flutter/flutter#185008) 2026-04-14 [email protected] Roll Fuchsia Linux SDK from K_2AkZL3Drs6cGE1q... to rB8LAuZL_DwHMssTU... (flutter/flutter#185007) 2026-04-14 [email protected] [fuchsia] Replace ambient-replace-as-executable with VmexResource. (flutter/flutter#184967) 2026-04-13 [email protected] [Impeller] Commands that don't specify their own viewports get the viewport of the render pass. (flutter/flutter#177473) 2026-04-13 [email protected] Roll Skia from bc1df263ff3f to 0e98a9c635bb (1 revision) (flutter/flutter#184995) 2026-04-13 [email protected] Update autosubmit guide with the emergency label (flutter/flutter#184993) 2026-04-13 [email protected] [flutter_tools] Cache pubspec reads and share PackageGraph/PackageConfig across workspace packages during pub get post-processing (flutter/flutter#184528) 2026-04-13 [email protected] Fix codesign verification test for SwiftPM Add to App (flutter/flutter#184980) 2026-04-13 [email protected] Preprovision Android NDK for flavored builds and reuse matching unflavored NDKs (flutter/flutter#183555) 2026-04-13 [email protected] Reland "Disable async mode with LLDB" (flutter/flutter#184970) 2026-04-13 [email protected] Roll Skia from 55ddd6bb8be5 to bc1df263ff3f (6 revisions) (flutter/flutter#184968) 2026-04-13 [email protected] Expose platform specific handles for multi-window API (flutter/flutter#184662) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages Please CC [email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug: * flutter#185013 Splits up test. Manually split up by copy-pasting the file removing the other tests and moving the shared methods to packages/flutter_tools/test/integration.shard/isolated/record_use_utils.dart (Avoided using agents here to avoid having to review if the tests are still testing what they are supposed to test.) The new way to run all the relevant tests: ``` flutter_tools $ GIT_CONFIG_PARAMETERS="'core.multiPackIndex=false'" flutter test test/integration.shard/isolated/record_use*test.dart --concurrency=1 ```
…r#11506) flutter/flutter@2fa45e0...c1b14e9 2026-04-14 [email protected] Rebuild flutter tool skill (flutter/flutter#184975) 2026-04-14 [email protected] Roll Skia from 0851d988db03 to 4c382df6a25a (1 revision) (flutter/flutter#185025) 2026-04-14 [email protected] Roll Dart SDK from 5504504b38c2 to ee5afcef0596 (1 revision) (flutter/flutter#185024) 2026-04-14 [email protected] [ci] Split up integration.shard record_use_test.dart (flutter/flutter#185022) 2026-04-14 [email protected] Roll Skia from d34c84df4c37 to 0851d988db03 (3 revisions) (flutter/flutter#185012) 2026-04-14 [email protected] [record_use] Add recorded uses to link hooks (flutter/flutter#184869) 2026-04-14 [email protected] Roll Skia from 0e98a9c635bb to d34c84df4c37 (5 revisions) (flutter/flutter#185009) 2026-04-14 [email protected] Roll Dart SDK from ef28089d6533 to 5504504b38c2 (3 revisions) (flutter/flutter#185008) 2026-04-14 [email protected] Roll Fuchsia Linux SDK from K_2AkZL3Drs6cGE1q... to rB8LAuZL_DwHMssTU... (flutter/flutter#185007) 2026-04-14 [email protected] [fuchsia] Replace ambient-replace-as-executable with VmexResource. (flutter/flutter#184967) 2026-04-13 [email protected] [Impeller] Commands that don't specify their own viewports get the viewport of the render pass. (flutter/flutter#177473) 2026-04-13 [email protected] Roll Skia from bc1df263ff3f to 0e98a9c635bb (1 revision) (flutter/flutter#184995) 2026-04-13 [email protected] Update autosubmit guide with the emergency label (flutter/flutter#184993) 2026-04-13 [email protected] [flutter_tools] Cache pubspec reads and share PackageGraph/PackageConfig across workspace packages during pub get post-processing (flutter/flutter#184528) 2026-04-13 [email protected] Fix codesign verification test for SwiftPM Add to App (flutter/flutter#184980) 2026-04-13 [email protected] Preprovision Android NDK for flavored builds and reuse matching unflavored NDKs (flutter/flutter#183555) 2026-04-13 [email protected] Reland "Disable async mode with LLDB" (flutter/flutter#184970) 2026-04-13 [email protected] Roll Skia from 55ddd6bb8be5 to bc1df263ff3f (6 revisions) (flutter/flutter#184968) 2026-04-13 [email protected] Expose platform specific handles for multi-window API (flutter/flutter#184662) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages Please CC [email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
…r#11506) flutter/flutter@2fa45e0...c1b14e9 2026-04-14 [email protected] Rebuild flutter tool skill (flutter/flutter#184975) 2026-04-14 [email protected] Roll Skia from 0851d988db03 to 4c382df6a25a (1 revision) (flutter/flutter#185025) 2026-04-14 [email protected] Roll Dart SDK from 5504504b38c2 to ee5afcef0596 (1 revision) (flutter/flutter#185024) 2026-04-14 [email protected] [ci] Split up integration.shard record_use_test.dart (flutter/flutter#185022) 2026-04-14 [email protected] Roll Skia from d34c84df4c37 to 0851d988db03 (3 revisions) (flutter/flutter#185012) 2026-04-14 [email protected] [record_use] Add recorded uses to link hooks (flutter/flutter#184869) 2026-04-14 [email protected] Roll Skia from 0e98a9c635bb to d34c84df4c37 (5 revisions) (flutter/flutter#185009) 2026-04-14 [email protected] Roll Dart SDK from ef28089d6533 to 5504504b38c2 (3 revisions) (flutter/flutter#185008) 2026-04-14 [email protected] Roll Fuchsia Linux SDK from K_2AkZL3Drs6cGE1q... to rB8LAuZL_DwHMssTU... (flutter/flutter#185007) 2026-04-14 [email protected] [fuchsia] Replace ambient-replace-as-executable with VmexResource. (flutter/flutter#184967) 2026-04-13 [email protected] [Impeller] Commands that don't specify their own viewports get the viewport of the render pass. (flutter/flutter#177473) 2026-04-13 [email protected] Roll Skia from bc1df263ff3f to 0e98a9c635bb (1 revision) (flutter/flutter#184995) 2026-04-13 [email protected] Update autosubmit guide with the emergency label (flutter/flutter#184993) 2026-04-13 [email protected] [flutter_tools] Cache pubspec reads and share PackageGraph/PackageConfig across workspace packages during pub get post-processing (flutter/flutter#184528) 2026-04-13 [email protected] Fix codesign verification test for SwiftPM Add to App (flutter/flutter#184980) 2026-04-13 [email protected] Preprovision Android NDK for flavored builds and reuse matching unflavored NDKs (flutter/flutter#183555) 2026-04-13 [email protected] Reland "Disable async mode with LLDB" (flutter/flutter#184970) 2026-04-13 [email protected] Roll Skia from 55ddd6bb8be5 to bc1df263ff3f (6 revisions) (flutter/flutter#184968) 2026-04-13 [email protected] Expose platform specific handles for multi-window API (flutter/flutter#184662) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages Please CC [email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bug:
Splits up test.
Manually split up by copy-pasting the file removing the other tests and moving the shared methods to packages/flutter_tools/test/integration.shard/isolated/record_use_utils.dart
(Avoided using agents here to avoid having to review if the tests are still testing what they are supposed to test.)
The new way to run all the relevant tests: