Fix stale E2E CLI assumptions#7608
Merged
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates the E2E test suite to match current Shopify CLI behavior by removing assumptions about deprecated flags and a hard-coded major version.
Changes:
- Update the E2E
deployApphelper to pass--allow-updatesby default (replacing removed--force). - Make the PTY smoke test version assertion major-version-agnostic by removing the wait for output containing
3.while still asserting successful exit and semver output.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| packages/e2e/tests/smoke-pty.spec.ts | Removes the hard-coded wait for 3. output and keeps a generic semver assertion after the command exits. |
| packages/e2e/setup/app.ts | Replaces the deprecated force option/flag with allowUpdates (defaulting true) and adds allowDeletes support. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
140bb90 to
74e7148
Compare
alfonso-noriega
approved these changes
May 22, 2026
gonzaloriestra
approved these changes
May 22, 2026
gonzaloriestra
left a comment
Contributor
There was a problem hiding this comment.
You can find the instructions to run the tests locally here: https://vault.shopify.io/teams/2238-DevTools/docs/dev-platform/cli/Testing#how-to-run-e2e-tests
They are failing for me:
Error: posix_spawnp failed.
at ../setup/global-auth.ts:81
79 | spawnEnv.CODESPACES = 'true'
80 |
> 81 | const ptyProcess = nodePty.spawn('node', [executables.cli, 'auth', 'login'], {
| ^
82 | name: 'xterm-color',
83 | cols: 120,
84 | rows: 30,
at UnixTerminal (/Users/gonzalo/src/github.com/Shopify/cli/node_modules/.pnpm/node-pty@1.1.0/node_modules/node-pty/src/unixTerminal.ts:106:22)
at Module.spawn (/Users/gonzalo/src/github.com/Shopify/cli/node_modules/.pnpm/node-pty@1.1.0/node_modules/node-pty/src/index.ts:31:10)
at globalSetup (/Users/gonzalo/src/github.com/Shopify/cli/packages/e2e/setup/global-auth.ts:81:30)
/Users/gonzalo/src/github.com/Shopify/cli/packages/e2e:
ERR_PNPM_RECURSIVE_EXEC_FIRST_FAIL Command failed with exit code 1: playwright test
ELIFECYCLE Command failed with exit code 1.
Anyway, the changes here make total sense.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed
deployApphelper to pass--allow-updatesby default instead of the removed--forceflag.3.. The test still asserts the command exits successfully and emits semver output.Why
Recent PR and merge-queue runs are green at the workflow level but E2E jobs are failing because
e2e-testshascontinue-on-error: true.The current job-level failures are stale test assumptions:
tests/app-deploy.spec.tsfails at deploy step 2 withNonexistent flag: --force.tests/smoke-pty.spec.tsfails waiting for output3.while the CLI now prints4.0.0.Validation
git diff --checkpnpm --filter @shopify/e2e type-checkpnpm --filter @shopify/e2e lintI did not run the full E2E suite locally because it depends on CI secrets and live Shopify test resources.