Skip to content

Remove ember-cli-fastboot from test-app - #797

Merged
SergeAstapov merged 1 commit into
ember-animation:masterfrom
NullVoxPopuli-ai-agent:ai-agent/remove-modal-dialog-and-fastboot
May 10, 2026
Merged

SergeAstapov merged 1 commit into
ember-animation:masterfrom
NullVoxPopuli-ai-agent:ai-agent/remove-modal-dialog-and-fastboot

Conversation

@NullVoxPopuli-ai-agent

@NullVoxPopuli-ai-agent NullVoxPopuli-ai-agent commented May 8, 2026 •

Copy link
Copy Markdown

Summary

Drops ember-cli-fastboot, ember-cli-fastboot-testing, the lone tests/fastboot/if-demo-test.js, and the fastbootDependencies block from test-app/package.json. There's no FastBoot runtime behavior the addon's own tests rely on. (The typeof FastBoot === 'undefined' guard inside addon/src/components/animated-each.gts is a defensive check for downstream consumers and stays.)

Adds !important to the existing inline #ember-testing { transform: none } override in test-app/tests/index.html — see below for why.

What about ember-modal-dialog?

The 4.0.0 pnpm override is left in place. Test-app source never imported it, but docs/'s ember-cli-addon-docs chain depends on it transitively, and floating to 4.1.5 breaks the docs search-functionality acceptance test (waitFor timed out waiting for selector \"[data-test-search-result-list]\"). I tried removing it and CI surfaced the regression — separate cleanup, separate PR.

Why the !important

Removing ember-cli-fastboot shifts ember-auto-import's webpack pipeline: with fastboot, @ember/test-helpers' CSS gets extracted into a separate chunk linked in <head> before the inline override. Without fastboot, the same CSS is inlined into JS and injected via style-loader at runtime — after the inline override. Same specificity, later rule wins, so the default #ember-testing { transform: scale(0.5); width: 200% } was beating the override and bounds-based tests started measuring at half size:

not ok 48 - Integration | Component | animated container: measures at the appropriate time
  actual: 160.5
  expected: 321

not ok 49 - Integration | Component | animated container: unlocks only after own motion is done
  actual: 50
  expected: 100

!important resolves the ordering issue regardless of how/when test-helpers' CSS gets injected.

Test plan

  • pnpm --filter test-app test:ember → 255 pass, 0 fail, 5 skip (was 256/0/5; net -1 is the deleted if-demo-test).
  • pnpm lint clean in both addon/ and test-app/.
  • pnpm --filter ember-animated build succeeds.

🤖 Generated with Claude Code

@SergeAstapov

Copy link
Copy Markdown
Collaborator

for context, fastboot test was to avoid regression like #189

@NullVoxPopuli

Copy link
Copy Markdown
Contributor

for context, fastboot test was to avoid regression like #189

DOMRect is a standard web api, and any SSR solution worth anything will need to have that available 🙈

Drops `ember-cli-fastboot`, `ember-cli-fastboot-testing`, the lone
`tests/fastboot/if-demo-test.js`, and the `fastbootDependencies` block
from `test-app/package.json`. There's no FastBoot runtime behavior the
addon's own tests rely on; the `typeof FastBoot === 'undefined'` guard
inside `addon/src/components/animated-each.gts` is a defensive runtime
check for downstream consumers and stays in place.

Note: ember-modal-dialog is unused in the test-app source, but the
`4.0.0` pnpm override at the repo root is left in place because
`docs/`'s `ember-cli-addon-docs` chain depends on it transitively, and
floating to `4.1.5` breaks the docs search-functionality acceptance
test.

One subtle side effect of removing fastboot: ember-auto-import's
webpack pipeline no longer extracts `@ember/test-helpers`' CSS into a
separate chunk linked early in `<head>`. The same CSS is now inlined
into JS and injected by `style-loader` at runtime — *after* the
`tests/index.html` inline override — so the default
`#ember-testing { transform: scale(0.5); width: 200% }` was beating
the override and bounds-based tests measured at half size
(`160.5 vs 321`, `actual: 50 expected: 100`, etc.). Fixed by adding
`!important` to the existing inline override so it wins regardless of
injection order.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@NullVoxPopuli-ai-agent
NullVoxPopuli-ai-agent force-pushed the ai-agent/remove-modal-dialog-and-fastboot branch from 5b248a3 to 02c0e9e Compare May 8, 2026 19:03
@NullVoxPopuli-ai-agent NullVoxPopuli-ai-agent changed the title Remove ember-modal-dialog and fastboot from test-app Remove ember-cli-fastboot from test-app May 8, 2026
@SergeAstapov
SergeAstapov merged commit 477ea3b into ember-animation:master May 10, 2026
21 of 23 checks passed
@github-actions github-actions Bot mentioned this pull request Jul 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants