Skip to content

fix: CXSPA-13801-11830: clean e2e - #21822

Draft
i53577 wants to merge 61 commits into
developfrom
feature/CXSPA-13801-11830-clean-e2e
Draft

fix: CXSPA-13801-11830: clean e2e#21822
i53577 wants to merge 61 commits into
developfrom
feature/CXSPA-13801-11830-clean-e2e

Conversation

@i53577

@i53577 i53577 commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

No description provided.

@i53577
i53577 requested review from a team as code owners July 30, 2026 08:22
@github-actions
github-actions Bot marked this pull request as draft July 30, 2026 08:22
@github-actions

Copy link
Copy Markdown
Contributor

🚨 PR Title Validation Failed 🚨

Your pull request title does not follow the required format. Please update it to match the expected pattern:

Expected format:
<type>: <subject>

Allowed Types

  • docs: Changes to documentation only
  • feat: New feature work
  • fix: Bug fixes
  • perf: Code improvements for performance
  • refactor: Code changes that are not bug fixes or features
  • style: Code style changes (e.g., whitespace, formatting)
  • test: Adding or updating tests
  • chore: Build, CI, scripts, configs, etc.

Example of a valid PR title

feat: Add user authentication
fix: Resolve checkout bug
docs: Update API documentation

Merge is blocked until the PR title is corrected.

@i53577
i53577 marked this pull request as ready for review July 30, 2026 08:22
@i53577 i53577 changed the title Feature/cxspa 13801 11830 clean e2e fix: cxspa- 13801 11830 clean e2e Jul 30, 2026
@i53577 i53577 changed the title fix: cxspa- 13801 11830 clean e2e fix: CXSPA-13801-11830: clean e2e Jul 30, 2026
@github-actions

Copy link
Copy Markdown
Contributor

E2E Tests Failed ❌

📸 Download Screenshots


Commit: b095fa0

@github-actions

Copy link
Copy Markdown
Contributor

Merge Checks Failed

Please push a commit to re-trigger the build.
To push an empty commit you can use `git commit --allow-empty -m "Trigger Build"`

i53577 and others added 2 commits July 31, 2026 11:45
…fects

`defer(() => EMPTY)` in individual effects was insufficient: NgRx's
`EffectSources.toActions()` wraps all effects with `materialize()` and
merges them inside a long-lived `exhaustMap` that runs inside Angular's
zone. Even when each effect completes immediately, the outer subscription
chain keeps the zone perpetually unstable, preventing
`ApplicationRef.isStable` from emitting and causing Cypress `cy.wait()`
to time out.

Implementing `OnRunEffects.ngrxOnRunEffects` and returning `EMPTY` when
disabled causes NgRx's `resolveEffectSource` to pass `EMPTY` to
`exhaustMap`, which completes synchronously — no Zone.js pending task is
created.

Also switch `takeUserId(true)` to `getUserId().pipe(filter, take(1))` to
avoid emitting the anonymous user ID during token refresh.
@github-actions
github-actions Bot marked this pull request as draft July 31, 2026 03:46
@i53577
i53577 marked this pull request as ready for review July 31, 2026 03:46
@github-actions

Copy link
Copy Markdown
Contributor

E2E Tests Failed ❌

📸 Download Screenshots


Commit: 93bb81c

@github-actions

Copy link
Copy Markdown
Contributor

Merge Checks Failed

Please push a commit to re-trigger the build.
To push an empty commit you can use `git commit --allow-empty -m "Trigger Build"`

The previous glob `path: '.../cms/pages?lang=en&curr=*'` assumes query
parameters are serialised as lang-first.  Adding B2bUnitSelectionOccModule
changes Angular's OccConfig merge order, flipping the serialisation to
curr-first (?curr=USD&lang=en), so the glob never matches and
cy.wait('@gethomepage') times out with "No request ever occurred".

The attempted fix using `pathname` also failed because Cypress treats the
`pathname` field as a literal string — the `*` in `users/*/cms/pages` was
matched as a literal asterisk, not as a glob wildcard.

Fix: use `path: '.../cms/pages*'` — the `path` field supports minimatch
globs, so the trailing `*` accepts any query-string regardless of parameter
order.  The homepage CMS request is uniquely identified by omitting a
pageLabelOrId parameter, so no query-string filter is needed.
@github-actions
github-actions Bot marked this pull request as draft July 31, 2026 08:51
@i53577
i53577 marked this pull request as ready for review July 31, 2026 09:08
@github-actions

Copy link
Copy Markdown
Contributor

Merge Checks Failed

Please push a commit to re-trigger the build.
To push an empty commit you can use `git commit --allow-empty -m "Trigger Build"`

@github-actions
github-actions Bot marked this pull request as draft July 31, 2026 09:16
@i53577
i53577 marked this pull request as ready for review July 31, 2026 09:16
@github-actions

Copy link
Copy Markdown
Contributor

E2E Tests Failed ❌

📸 Download Screenshots


Commit: 60f00a8

@github-actions

Copy link
Copy Markdown
Contributor

Merge Checks Failed

Please push a commit to re-trigger the build.
To push an empty commit you can use `git commit --allow-empty -m "Trigger Build"`

…store navigation intercept

Replace ngrxOnRunEffects(EMPTY) approach with per-effect defer(() => EMPTY) factory guards
that skip the action pipeline when b2bUnitSelection.enabled is false.

Restore the homepage CMS intercept pattern to path:'...pages?lang=en&curr=*'; the broader
'pages*' glob introduced in 89a5371 matched non-homepage CMS requests under Cypress 15
testIsolation, causing cy.wait('@gethomepage') to consume the wrong response.
@github-actions
github-actions Bot marked this pull request as draft July 31, 2026 10:27
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