Popup Focus E2E Test

← Back to main

Behavior Under Test

  • Trusted domains (.ice.com, .elliemae.com, .ellielabs.com, localhost): window.opener is kept intact. Re-opening uses window.open('', name) to bring the popup to front.
  • Untrusted domains (everything else): window.opener = null is set for security. Re-opening falls back to guest.window.focus().
  • The host tracks popup windows and detects closure via a periodic monitor.

Test Steps

  1. Wait for "Popup Focus Host ready" in the Event Log.
  2. Trusted popup test: Click "Open Title Service" → popup opens. Click "Re-open Title Service" → the existing popup should come to the foreground (no new window).
  3. Second trusted popup: Click "Open Credit Service" → second popup opens. Click "Re-open Credit" → same foreground behavior.
  4. Untrusted popup test: Click "Open Third-Party" → popup opens to example.com. Click "Re-open Third-Party" → focus may or may not work (opener was nulled). Observe the behavior.
  5. Verify the Guest Status panel shows the open/closed state of each popup.
  6. Manually close a popup window, then check Guest Status updates to "closed".

Expected Behavior

Title / Credit Service (Trusted)

  • "Open" → new popup window appears
  • "Re-open" → existing popup comes to front, no new window
  • Guest Status shows open
  • Embedded Pricing Service renders normally

Third-Party (Untrusted)

  • "Open" → popup opens to example.com
  • "Re-open" → focus() is called on stored reference (browser may or may not honor it)
  • opener is null inside the popup

Popup Closure

  • Close a popup manually (X button)
  • Guest Status updates to closed within 2 seconds
  • Re-opening a closed popup should open a new window

Popup Actions

Trusted (localhost — opener preserved)


Untrusted (opener nulled)

Guest Status

No popup guests loaded yet

Event Log

Embedded Guest (for comparison)

Verification Checklist