Skip to content

Conversation

@sigurdm
Copy link
Contributor

@sigurdm sigurdm commented Feb 20, 2025

Seems like each test had its own way of doing this.

Extracted from #160443

@github-actions github-actions bot added tool Affects the "flutter" command-line tool. See also t: labels. a: desktop Running on desktop team-ios Owned by iOS platform team labels Feb 20, 2025
@sigurdm sigurdm marked this pull request as draft February 20, 2025 15:55
@flutter-dashboard
Copy link

This pull request has been changed to a draft. The currently pending flutter-gold status will not be able to resolve until a new commit is pushed or the change is marked ready for review again.

For more guidance, visit Writing a golden file test for package:flutter.

Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing.

Copy link
Contributor

@matanlurey matanlurey left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, Approval.

A few minor suggestions that are not blocking.

/// [otherLibs] maps other package names to their `rootUri` relative to `directory`.
///
/// Returns the `File` Object representing the package config.
File writePackageConfigFile({
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is more of a clarification question than a block:

Why do this instead of just Iterable<Package> packages (from package:package_config)?

Is there something that is gained other than a bit of code tersity?

i.e. https://github.com/flutter/flutter/blob/8ad78cce13cf39e71398c9016d84f42b6bc091ae/packages/flutter_tools/test/src/package_config.dart.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did not really consider using a list of Package but looking at the constructor, it requires repeating the root uri (the location of the package config)
I think that makes it kinda unergonomic.

Also the Package.packageUri getter is always absolute, meaning no easy way to test relative paths.

I think I'll keep this for now, though I can see how a list of packages could make sense

///
/// Returns the `File` Object representing the package config.
File writePackageConfigFile({
Directory? directory,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would prefer to make this explicit (required non-null) instead of falling back to globals.fs.currentDirectory; the tests that want this behavior can write it themselves IMO.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

/// Returns the `File` Object representing the package config.
File writePackageConfigFile({
Directory? directory,
String mainLibName = 'my_app',
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ditto, I would make this required instead of assuming a default.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

@sigurdm sigurdm requested a review from jmagman as a code owner February 27, 2025 12:38
@github-actions github-actions bot added a: tests "flutter test", flutter_test, or one of our tests a: text input Entering text in a text field or keyboard related problems platform-android Android applications specifically platform-ios iOS applications specifically framework flutter/packages/flutter repository. See also f: labels. engine flutter/engine related. See also e: labels. a: animation Animation APIs labels Feb 27, 2025
@sigurdm sigurdm added this pull request to the merge queue Feb 28, 2025
Merged via the queue into flutter:master with commit 45b21ec Feb 28, 2025
176 checks passed
@sigurdm sigurdm deleted the package_conf_tests branch February 28, 2025 09:19
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 28, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 28, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 28, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 28, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 28, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Mar 1, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Mar 1, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Mar 2, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Mar 2, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Mar 2, 2025
auto-submit bot pushed a commit to flutter/packages that referenced this pull request Mar 2, 2025
Roll Flutter from 2e570ca to 842db35 (59 revisions)

flutter/flutter@2e570ca...842db35

2025-03-02 [email protected] Roll Skia from ad64415050aa to 101eee8fce59 (1 revision) (flutter/flutter#164449)
2025-03-02 [email protected] Roll Fuchsia Linux SDK from ln3joxJfRN2XGhvCv... to AO1KirSDI7-MVYNPN... (flutter/flutter#164440)
2025-03-02 [email protected] android: Clean up gen_snapshot artifact build (flutter/flutter#164418)
2025-03-02 [email protected] Start using `bin/cache/engine.{stamp|realm}` instead of `bin/internal/engine.{realm|version}`. (flutter/flutter#164352)
2025-03-01 [email protected] Add macos/android_debug_unopt to local_engine.json (flutter/flutter#164410)
2025-03-01 [email protected] Delete unused build archive targets (flutter/flutter#164414)
2025-03-01 [email protected] Roll Fuchsia Linux SDK from QMun2itYrV_zUYrvW... to ln3joxJfRN2XGhvCv... (flutter/flutter#164423)
2025-03-01 [email protected] Roll Skia from ac14158663ea to ad64415050aa (1 revision) (flutter/flutter#164413)
2025-03-01 [email protected] Update linux_host_engine.json ci/host_release description (flutter/flutter#164402)
2025-03-01 [email protected] In update_engine_version_test.dart, do not populate the test environment with the host platform environment (flutter/flutter#164395)
2025-03-01 [email protected] Roll-forward #164317: Use `bin/cache/engine.stamp` (flutter/flutter#164401)
2025-02-28 [email protected] Make pressing and moving on CupertinoButton closer to native behavior. (flutter/flutter#161731)
2025-02-28 [email protected] Roll Skia from 4005ba3ca7b6 to ac14158663ea (7 revisions) (flutter/flutter#164404)
2025-02-28 [email protected] [macOS] Prepare FlutterKeyboardManager for multi-view (flutter/flutter#163962)
2025-02-28 [email protected] Add PlatformDispatcher.engineId (flutter/flutter#163476)
2025-02-28 [email protected] Move `integration_test.FlutterDeviceScreenshotTest` to the framework slow shard (flutter/flutter#164398)
2025-02-28 [email protected] Fix: Update DelegatedTransition animation parameter correctly (flutter/flutter#163853)
2025-02-28 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Write an identical value to `bin/cache/engine.stamp` to prepare for migration (#164317)" (flutter/flutter#164396)
2025-02-28 [email protected] Add action for configuring default action of EditableText.onTapUpOutside (flutter/flutter#162575)
2025-02-28 [email protected] Align jvmTarget usages across codebase, while editing build.gradle files align them with android version documentation (flutter/flutter#164200)
2025-02-28 [email protected] Roll Packages from 01d3d5c to 70b41e1 (5 revisions) (flutter/flutter#164380)
2025-02-28 [email protected] [tool] Allow using archiveName in android bundle build (flutter/flutter#162390)
2025-02-28 [email protected] Fix incorrectly checking for invalid environment variables in the tool (flutter/flutter#164101)
2025-02-28 [email protected] Support forward and back buttons (flutter/flutter#164356)
2025-02-28 [email protected] Fix window creation callback for multi-window (flutter/flutter#164353)
2025-02-28 [email protected] Fix flutter doctor usage of eglinfo in failure cases. (flutter/flutter#164334)
2025-02-28 [email protected]  Refactor writing of package config in tests (flutter/flutter#163734)
2025-02-28 [email protected] Fixed the issue that Slider's secondaryTrackValue is not updated. (flutter/flutter#163996)
2025-02-28 [email protected] Roll pub packages (flutter/flutter#164357)
2025-02-28 [email protected] Remove `Mac mac_unopt` presubmit retry count (flutter/flutter#164350)
2025-02-28 [email protected] Roll Fuchsia Linux SDK from 1elkOxihZuTEiTXzY... to QMun2itYrV_zUYrvW... (flutter/flutter#164351)
2025-02-28 [email protected] Drag handles only need to be tested on mobile platforms. (flutter/flutter#163723)
2025-02-28 [email protected] [Android] Use java for looking up Android API level. (flutter/flutter#163558)
2025-02-28 [email protected] Write an identical value to `bin/cache/engine.stamp` to prepare for migration (flutter/flutter#164317)
2025-02-27 [email protected] Wires up expanded state in web engine (flutter/flutter#164048)
2025-02-27 [email protected] Remove Cheserton's File (flutter/flutter#164340)
2025-02-27 [email protected] Replace update semantics handler with signal. (flutter/flutter#163583)
2025-02-27 [email protected] Split up the conical gradient fragment shader (flutter/flutter#164058)
2025-02-27 [email protected] Roll Skia from c16b145749d4 to 4005ba3ca7b6 (3 revisions) (flutter/flutter#164339)
2025-02-27 [email protected] Delete and update stale documentation regarding engine/engine hash. (flutter/flutter#164324)
2025-02-27 [email protected] Document how `engine.version` (is/will be) computed (flutter/flutter#164335)
2025-02-27 [email protected] Update conductor to write engine.version file (flutter/flutter#163350)
2025-02-27 [email protected] remove last usages of min/compile/target SdkVersion, align sourceCompatibility across repo and update android version documentation (flutter/flutter#164198)
2025-02-27 [email protected] Update links to the `flutter/engine` repository for the monorepo. (flutter/flutter#164328)
2025-02-27 [email protected] Add empty `io.flutter.app.FlutterApplication` to give deprecation notice, and un-break projects that have not migrated (flutter/flutter#164233)
2025-02-27 [email protected] Revert dart sdks that were causing dartaotruntime issues in g3  (flutter/flutter#164307)
...
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 20, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 20, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 21, 2025
androidseb pushed a commit to androidseb/packages that referenced this pull request Jun 8, 2025
Roll Flutter from 2e570ca to 842db35 (59 revisions)

flutter/flutter@2e570ca...842db35

2025-03-02 [email protected] Roll Skia from ad64415050aa to 101eee8fce59 (1 revision) (flutter/flutter#164449)
2025-03-02 [email protected] Roll Fuchsia Linux SDK from ln3joxJfRN2XGhvCv... to AO1KirSDI7-MVYNPN... (flutter/flutter#164440)
2025-03-02 [email protected] android: Clean up gen_snapshot artifact build (flutter/flutter#164418)
2025-03-02 [email protected] Start using `bin/cache/engine.{stamp|realm}` instead of `bin/internal/engine.{realm|version}`. (flutter/flutter#164352)
2025-03-01 [email protected] Add macos/android_debug_unopt to local_engine.json (flutter/flutter#164410)
2025-03-01 [email protected] Delete unused build archive targets (flutter/flutter#164414)
2025-03-01 [email protected] Roll Fuchsia Linux SDK from QMun2itYrV_zUYrvW... to ln3joxJfRN2XGhvCv... (flutter/flutter#164423)
2025-03-01 [email protected] Roll Skia from ac14158663ea to ad64415050aa (1 revision) (flutter/flutter#164413)
2025-03-01 [email protected] Update linux_host_engine.json ci/host_release description (flutter/flutter#164402)
2025-03-01 [email protected] In update_engine_version_test.dart, do not populate the test environment with the host platform environment (flutter/flutter#164395)
2025-03-01 [email protected] Roll-forward #164317: Use `bin/cache/engine.stamp` (flutter/flutter#164401)
2025-02-28 [email protected] Make pressing and moving on CupertinoButton closer to native behavior. (flutter/flutter#161731)
2025-02-28 [email protected] Roll Skia from 4005ba3ca7b6 to ac14158663ea (7 revisions) (flutter/flutter#164404)
2025-02-28 [email protected] [macOS] Prepare FlutterKeyboardManager for multi-view (flutter/flutter#163962)
2025-02-28 [email protected] Add PlatformDispatcher.engineId (flutter/flutter#163476)
2025-02-28 [email protected] Move `integration_test.FlutterDeviceScreenshotTest` to the framework slow shard (flutter/flutter#164398)
2025-02-28 [email protected] Fix: Update DelegatedTransition animation parameter correctly (flutter/flutter#163853)
2025-02-28 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Write an identical value to `bin/cache/engine.stamp` to prepare for migration (#164317)" (flutter/flutter#164396)
2025-02-28 [email protected] Add action for configuring default action of EditableText.onTapUpOutside (flutter/flutter#162575)
2025-02-28 [email protected] Align jvmTarget usages across codebase, while editing build.gradle files align them with android version documentation (flutter/flutter#164200)
2025-02-28 [email protected] Roll Packages from 01d3d5c to 70b41e1 (5 revisions) (flutter/flutter#164380)
2025-02-28 [email protected] [tool] Allow using archiveName in android bundle build (flutter/flutter#162390)
2025-02-28 [email protected] Fix incorrectly checking for invalid environment variables in the tool (flutter/flutter#164101)
2025-02-28 [email protected] Support forward and back buttons (flutter/flutter#164356)
2025-02-28 [email protected] Fix window creation callback for multi-window (flutter/flutter#164353)
2025-02-28 [email protected] Fix flutter doctor usage of eglinfo in failure cases. (flutter/flutter#164334)
2025-02-28 [email protected]  Refactor writing of package config in tests (flutter/flutter#163734)
2025-02-28 [email protected] Fixed the issue that Slider's secondaryTrackValue is not updated. (flutter/flutter#163996)
2025-02-28 [email protected] Roll pub packages (flutter/flutter#164357)
2025-02-28 [email protected] Remove `Mac mac_unopt` presubmit retry count (flutter/flutter#164350)
2025-02-28 [email protected] Roll Fuchsia Linux SDK from 1elkOxihZuTEiTXzY... to QMun2itYrV_zUYrvW... (flutter/flutter#164351)
2025-02-28 [email protected] Drag handles only need to be tested on mobile platforms. (flutter/flutter#163723)
2025-02-28 [email protected] [Android] Use java for looking up Android API level. (flutter/flutter#163558)
2025-02-28 [email protected] Write an identical value to `bin/cache/engine.stamp` to prepare for migration (flutter/flutter#164317)
2025-02-27 [email protected] Wires up expanded state in web engine (flutter/flutter#164048)
2025-02-27 [email protected] Remove Cheserton's File (flutter/flutter#164340)
2025-02-27 [email protected] Replace update semantics handler with signal. (flutter/flutter#163583)
2025-02-27 [email protected] Split up the conical gradient fragment shader (flutter/flutter#164058)
2025-02-27 [email protected] Roll Skia from c16b145749d4 to 4005ba3ca7b6 (3 revisions) (flutter/flutter#164339)
2025-02-27 [email protected] Delete and update stale documentation regarding engine/engine hash. (flutter/flutter#164324)
2025-02-27 [email protected] Document how `engine.version` (is/will be) computed (flutter/flutter#164335)
2025-02-27 [email protected] Update conductor to write engine.version file (flutter/flutter#163350)
2025-02-27 [email protected] remove last usages of min/compile/target SdkVersion, align sourceCompatibility across repo and update android version documentation (flutter/flutter#164198)
2025-02-27 [email protected] Update links to the `flutter/engine` repository for the monorepo. (flutter/flutter#164328)
2025-02-27 [email protected] Add empty `io.flutter.app.FlutterApplication` to give deprecation notice, and un-break projects that have not migrated (flutter/flutter#164233)
2025-02-27 [email protected] Revert dart sdks that were causing dartaotruntime issues in g3  (flutter/flutter#164307)
...
FMorschel pushed a commit to FMorschel/packages that referenced this pull request Jun 9, 2025
Roll Flutter from 2e570ca to 842db35 (59 revisions)

flutter/flutter@2e570ca...842db35

2025-03-02 [email protected] Roll Skia from ad64415050aa to 101eee8fce59 (1 revision) (flutter/flutter#164449)
2025-03-02 [email protected] Roll Fuchsia Linux SDK from ln3joxJfRN2XGhvCv... to AO1KirSDI7-MVYNPN... (flutter/flutter#164440)
2025-03-02 [email protected] android: Clean up gen_snapshot artifact build (flutter/flutter#164418)
2025-03-02 [email protected] Start using `bin/cache/engine.{stamp|realm}` instead of `bin/internal/engine.{realm|version}`. (flutter/flutter#164352)
2025-03-01 [email protected] Add macos/android_debug_unopt to local_engine.json (flutter/flutter#164410)
2025-03-01 [email protected] Delete unused build archive targets (flutter/flutter#164414)
2025-03-01 [email protected] Roll Fuchsia Linux SDK from QMun2itYrV_zUYrvW... to ln3joxJfRN2XGhvCv... (flutter/flutter#164423)
2025-03-01 [email protected] Roll Skia from ac14158663ea to ad64415050aa (1 revision) (flutter/flutter#164413)
2025-03-01 [email protected] Update linux_host_engine.json ci/host_release description (flutter/flutter#164402)
2025-03-01 [email protected] In update_engine_version_test.dart, do not populate the test environment with the host platform environment (flutter/flutter#164395)
2025-03-01 [email protected] Roll-forward #164317: Use `bin/cache/engine.stamp` (flutter/flutter#164401)
2025-02-28 [email protected] Make pressing and moving on CupertinoButton closer to native behavior. (flutter/flutter#161731)
2025-02-28 [email protected] Roll Skia from 4005ba3ca7b6 to ac14158663ea (7 revisions) (flutter/flutter#164404)
2025-02-28 [email protected] [macOS] Prepare FlutterKeyboardManager for multi-view (flutter/flutter#163962)
2025-02-28 [email protected] Add PlatformDispatcher.engineId (flutter/flutter#163476)
2025-02-28 [email protected] Move `integration_test.FlutterDeviceScreenshotTest` to the framework slow shard (flutter/flutter#164398)
2025-02-28 [email protected] Fix: Update DelegatedTransition animation parameter correctly (flutter/flutter#163853)
2025-02-28 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Write an identical value to `bin/cache/engine.stamp` to prepare for migration (#164317)" (flutter/flutter#164396)
2025-02-28 [email protected] Add action for configuring default action of EditableText.onTapUpOutside (flutter/flutter#162575)
2025-02-28 [email protected] Align jvmTarget usages across codebase, while editing build.gradle files align them with android version documentation (flutter/flutter#164200)
2025-02-28 [email protected] Roll Packages from 01d3d5c to 70b41e1 (5 revisions) (flutter/flutter#164380)
2025-02-28 [email protected] [tool] Allow using archiveName in android bundle build (flutter/flutter#162390)
2025-02-28 [email protected] Fix incorrectly checking for invalid environment variables in the tool (flutter/flutter#164101)
2025-02-28 [email protected] Support forward and back buttons (flutter/flutter#164356)
2025-02-28 [email protected] Fix window creation callback for multi-window (flutter/flutter#164353)
2025-02-28 [email protected] Fix flutter doctor usage of eglinfo in failure cases. (flutter/flutter#164334)
2025-02-28 [email protected]  Refactor writing of package config in tests (flutter/flutter#163734)
2025-02-28 [email protected] Fixed the issue that Slider's secondaryTrackValue is not updated. (flutter/flutter#163996)
2025-02-28 [email protected] Roll pub packages (flutter/flutter#164357)
2025-02-28 [email protected] Remove `Mac mac_unopt` presubmit retry count (flutter/flutter#164350)
2025-02-28 [email protected] Roll Fuchsia Linux SDK from 1elkOxihZuTEiTXzY... to QMun2itYrV_zUYrvW... (flutter/flutter#164351)
2025-02-28 [email protected] Drag handles only need to be tested on mobile platforms. (flutter/flutter#163723)
2025-02-28 [email protected] [Android] Use java for looking up Android API level. (flutter/flutter#163558)
2025-02-28 [email protected] Write an identical value to `bin/cache/engine.stamp` to prepare for migration (flutter/flutter#164317)
2025-02-27 [email protected] Wires up expanded state in web engine (flutter/flutter#164048)
2025-02-27 [email protected] Remove Cheserton's File (flutter/flutter#164340)
2025-02-27 [email protected] Replace update semantics handler with signal. (flutter/flutter#163583)
2025-02-27 [email protected] Split up the conical gradient fragment shader (flutter/flutter#164058)
2025-02-27 [email protected] Roll Skia from c16b145749d4 to 4005ba3ca7b6 (3 revisions) (flutter/flutter#164339)
2025-02-27 [email protected] Delete and update stale documentation regarding engine/engine hash. (flutter/flutter#164324)
2025-02-27 [email protected] Document how `engine.version` (is/will be) computed (flutter/flutter#164335)
2025-02-27 [email protected] Update conductor to write engine.version file (flutter/flutter#163350)
2025-02-27 [email protected] remove last usages of min/compile/target SdkVersion, align sourceCompatibility across repo and update android version documentation (flutter/flutter#164198)
2025-02-27 [email protected] Update links to the `flutter/engine` repository for the monorepo. (flutter/flutter#164328)
2025-02-27 [email protected] Add empty `io.flutter.app.FlutterApplication` to give deprecation notice, and un-break projects that have not migrated (flutter/flutter#164233)
2025-02-27 [email protected] Revert dart sdks that were causing dartaotruntime issues in g3  (flutter/flutter#164307)
...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

a: desktop Running on desktop team-ios Owned by iOS platform team tool Affects the "flutter" command-line tool. See also t: labels.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants