Skip to content

Reconcile flutter_tools tests with upstream 3.44.1#157

Merged
eseidel merged 2 commits into
shorebird/devfrom
shorebird/fix-tool-tests-3.44.1
Jun 5, 2026
Merged

Reconcile flutter_tools tests with upstream 3.44.1#157
eseidel merged 2 commits into
shorebird/devfrom
shorebird/fix-tool-tests-3.44.1

Conversation

@eseidel

@eseidel eseidel commented Jun 5, 2026

Copy link
Copy Markdown

What

Fixes the Flutter Tools Tests (macos + ubuntu) failures that have been red on shorebird/dev since the 3.44.1 rebase.

Why they were red

The "reset DEPS to upstream 3.44.1 + shorebird overlay" was an incomplete rebase: source files were bumped to 3.44.1, but several tool_tests/general test files stayed on the old (~3.41) upstream base, and the test-side of shorebird's own source divergences got dropped. So the tests didn't match the source — e.g. macos_test.dart wouldn't even compile (FakeXcodeProjectInterpreter.getInfo was missing upstream's new buildDirectory param). upstream/stable (3.44.1) is green on all of these; only the fork's tests were stale.

Approach

Per-file, reconcile each test with the current source in the checkout — a 3-way merge of shorebird's changes onto 3.44.1 where the file diverged both ways, plus expectation updates to match what the source actually emits. Tests only; no lib/ changes; nothing skipped or weakened.

  • macos_test.dart — pick up upstream's getInfo buildDirectory + new imports; align the iOS gen_snapshot expectations to the assembly→cc/clang→strip flow this fork uses (the fork deliberately stays on the assembly path, not upstream's --snapshot_kind=app-aot-macho-dylib).
  • common_test.dart / android_test.dart — expect --strip on AOT-ELF gen_snapshot invocations (shorebird's strip-by-default in base/build.dart).
  • cache_test.dart — match the displayName/downloadCount artifact API (FakeSecondaryCachedArtifact gains the missing overrides) and the "Web SDK"/"Engine Information" download-status messages.

Verified locally

All four files pass (FLUTTER_ROOT set): macos 21, common 22, android 13, cache 58 (+2 pre-existing skips). dart format + dart analyze clean.

Notes

  • This is the right-direction fix: it moves the tests toward upstream + the fork's real source, so it won't re-conflict on the next stable rebase the way hand-divergence would.
  • Root cause is the incomplete rebase. Keeping the fork green longer-term wants a green gate on PRs into shorebird/dev so the next stable bump can't silently re-rot it.
  • The separate Shorebird Android Tests check is a different suite (not flutter_tools) — assessing that next; not in this PR.

For fork-maintenance review (Brandon owns the fork now).

The 3.44.1 rebase bumped source to upstream but left several tool test
files on the old (~3.41) base and dropped the test-side of shorebird's own
source divergences, so `tool_tests/general` was red on shorebird/dev (and
on every PR into it).

Reconcile the affected test files with the current source in this checkout
(3-way merge of shorebird's changes onto 3.44.1 where applicable, plus
expectation updates to match what the source actually emits):

- macos_test.dart: pick up upstream's getInfo `buildDirectory` param + new
  imports; align iOS gen_snapshot to the assembly→cc/clang→strip flow this
  fork uses (not upstream's macho-dylib path).
- common_test.dart / android_test.dart: expect `--strip` (shorebird
  strip-by-default, build.dart) on AOT ELF gen_snapshot invocations.
- cache_test.dart: match the displayName/downloadCount artifact API
  (FakeSecondaryCachedArtifact gains the missing overrides) and the
  "Web SDK"/"Engine Information" download-status messages.

Tests only; no lib/ changes, nothing skipped. All four files pass locally
(macos 21, common 22, android 13, cache 58 + 2 pre-existing skips).
@eseidel eseidel requested a review from bdero June 5, 2026 03:01
@eseidel eseidel enabled auto-merge (squash) June 5, 2026 03:02
@eseidel eseidel merged commit be9d2c6 into shorebird/dev Jun 5, 2026
5 of 7 checks passed
@eseidel eseidel deleted the shorebird/fix-tool-tests-3.44.1 branch June 5, 2026 03:23
mrnpro pushed a commit to Flutter-Code-Push/flutter that referenced this pull request Jun 16, 2026
The 3.44.1 rebase bumped source to upstream but left several tool test
files on the old (~3.41) base and dropped the test-side of shorebird's own
source divergences, so `tool_tests/general` was red on shorebird/dev (and
on every PR into it).

Reconcile the affected test files with the current source in this checkout
(3-way merge of shorebird's changes onto 3.44.1 where applicable, plus
expectation updates to match what the source actually emits):

- macos_test.dart: pick up upstream's getInfo `buildDirectory` param + new
  imports; align iOS gen_snapshot to the assembly→cc/clang→strip flow this
  fork uses (not upstream's macho-dylib path).
- common_test.dart / android_test.dart: expect `--strip` (shorebird
  strip-by-default, build.dart) on AOT ELF gen_snapshot invocations.
- cache_test.dart: match the displayName/downloadCount artifact API
  (FakeSecondaryCachedArtifact gains the missing overrides) and the
  "Web SDK"/"Engine Information" download-status messages.

Tests only; no lib/ changes, nothing skipped. All four files pass locally
(macos 21, common 22, android 13, cache 58 + 2 pre-existing skips).
bdero pushed a commit that referenced this pull request Jun 22, 2026
The 3.44.1 rebase bumped source to upstream but left several tool test
files on the old (~3.41) base and dropped the test-side of shorebird's own
source divergences, so `tool_tests/general` was red on shorebird/dev (and
on every PR into it).

Reconcile the affected test files with the current source in this checkout
(3-way merge of shorebird's changes onto 3.44.1 where applicable, plus
expectation updates to match what the source actually emits):

- macos_test.dart: pick up upstream's getInfo `buildDirectory` param + new
  imports; align iOS gen_snapshot to the assembly→cc/clang→strip flow this
  fork uses (not upstream's macho-dylib path).
- common_test.dart / android_test.dart: expect `--strip` (shorebird
  strip-by-default, build.dart) on AOT ELF gen_snapshot invocations.
- cache_test.dart: match the displayName/downloadCount artifact API
  (FakeSecondaryCachedArtifact gains the missing overrides) and the
  "Web SDK"/"Engine Information" download-status messages.

Tests only; no lib/ changes, nothing skipped. All four files pass locally
(macos 21, common 22, android 13, cache 58 + 2 pre-existing skips).
bdero pushed a commit that referenced this pull request Jun 25, 2026
The 3.44.1 rebase bumped source to upstream but left several tool test
files on the old (~3.41) base and dropped the test-side of shorebird's own
source divergences, so `tool_tests/general` was red on shorebird/dev (and
on every PR into it).

Reconcile the affected test files with the current source in this checkout
(3-way merge of shorebird's changes onto 3.44.1 where applicable, plus
expectation updates to match what the source actually emits):

- macos_test.dart: pick up upstream's getInfo `buildDirectory` param + new
  imports; align iOS gen_snapshot to the assembly→cc/clang→strip flow this
  fork uses (not upstream's macho-dylib path).
- common_test.dart / android_test.dart: expect `--strip` (shorebird
  strip-by-default, build.dart) on AOT ELF gen_snapshot invocations.
- cache_test.dart: match the displayName/downloadCount artifact API
  (FakeSecondaryCachedArtifact gains the missing overrides) and the
  "Web SDK"/"Engine Information" download-status messages.

Tests only; no lib/ changes, nothing skipped. All four files pass locally
(macos 21, common 22, android 13, cache 58 + 2 pre-existing skips).
bdero pushed a commit that referenced this pull request Jul 7, 2026
The 3.44.1 rebase bumped source to upstream but left several tool test
files on the old (~3.41) base and dropped the test-side of shorebird's own
source divergences, so `tool_tests/general` was red on shorebird/dev (and
on every PR into it).

Reconcile the affected test files with the current source in this checkout
(3-way merge of shorebird's changes onto 3.44.1 where applicable, plus
expectation updates to match what the source actually emits):

- macos_test.dart: pick up upstream's getInfo `buildDirectory` param + new
  imports; align iOS gen_snapshot to the assembly→cc/clang→strip flow this
  fork uses (not upstream's macho-dylib path).
- common_test.dart / android_test.dart: expect `--strip` (shorebird
  strip-by-default, build.dart) on AOT ELF gen_snapshot invocations.
- cache_test.dart: match the displayName/downloadCount artifact API
  (FakeSecondaryCachedArtifact gains the missing overrides) and the
  "Web SDK"/"Engine Information" download-status messages.

Tests only; no lib/ changes, nothing skipped. All four files pass locally
(macos 21, common 22, android 13, cache 58 + 2 pre-existing skips).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants