Skip to content

test: browser tests expect current element behavior - #7060

Merged
kixelated merged 3 commits into
mainfrom
quest/m0/interop-green/stale-browser-tests
Nov 2, 2026
Merged

kixelated merged 3 commits into
mainfrom
quest/m0/interop-green/stale-browser-tests

Conversation

@kixelated

@kixelated kixelated commented Oct 28, 2026 •

Copy link
Copy Markdown
Collaborator

Problem

Two browser suites asserted behavior the elements no longer ship:

  • test/video/renderer.browser.ts expected an invalid url or volume attribute to reset to its default with no page errors. The elements now keep the last valid value, report the invalid attribute as a page error, and suspend media until it is fixed (js/watch/MIGRATE.md). This fails every Video run on main.
  • test/interop/clients/js/publish-ui.browser.ts used moq-transport-14 as a valid version, but moq-dev/moq#6753 removed it, so the setter throws unsupported version.

Approach

  • The renderer test (renamed to "invalid player and publisher attributes keep the last valid value and suspend media until corrected") now checks that:
    • url and volume keep their last valid values (https://example.invalid/, 0.75);
    • each invalid attribute reports exactly one page error (two url, one volume, three total);
    • both elements suspend (connection.enabled false). After the url fix, <moq-publish> resumes while <moq-watch> stays suspended until its volume is fixed too.
  • The publish-ui version-list tests use moq-transport-18 wherever they mean a supported draft. The refusal case already uses the unsupported moq-lite-99.
  • Deletes quest/m0/interop-green/stale-browser-tests.md and its link. That was the epic's last child, so the interop-green epic is now sized [XS]. What remains is confirming that one scheduled Interop run and one scheduled Video run pass.

Took over from a stale claim (claim commit only, starting session dead), as the maintainer chose in /quest-complete on 2026-11-01.

Impact

Test and quest changes only. Public API: none. Wire: none.

Validation

  • just test video: 11 pass, 0 fail. The three expected page errors appear.
  • bun test ./publish-ui.browser.ts (in test/interop/clients/js, via sh/local.sh): 11 pass, 0 fail.
  • biome check on both files, tsc --noEmit in test/video, quest check --base origin/main: clean.

Review

Local review skipped under the simple-review rule (moq-dev/quest#364): the change touches only tests and quests, so it carries no behavior risk. The online reviewers (CodeRabbit, Pullfrog) cover head 267d410.

Suggested follow-ups

  • None from this change. The epic's own remaining work, confirming a scheduled Interop and Video run, stays in its README.

(Written by Claude Opus 5.5)

kixelated and others added 2 commits November 1, 2026 14:59
The Video renderer test now asserts that an invalid `url` or `volume`
attribute keeps the last valid value, reports one page error each, and
suspends media until every invalid attribute is corrected. The publish-ui
version-list tests use `moq-transport-18` where they mean a supported
version, since moq-transport-14 was removed.

Finishes quest/m0/interop-green/stale-browser-tests.md and sizes the
interop-green epic now that its last child is done.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kixelated kixelated changed the title Browser tests expect current behavior test: browser tests expect current element behavior Nov 1, 2026
@kixelated
kixelated marked this pull request as ready for review November 1, 2026 23:03
@coderabbitai

coderabbitai Bot commented Nov 1, 2026

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 25 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used all 4 included reviews currently available.

Learn how review limits work.

Review configuration:

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 2ad90ad9-1545-4165-9099-e76ea503e825
Commits

Reviewing files that changed from the base of the PR and between de6c6d7 and 267d410.

Files selected for processing: 4
  • quest/m0/interop-green/README.md
  • quest/m0/interop-green/stale-browser-tests.md
  • test/interop/clients/js/publish-ui.browser.ts
  • test/video/renderer.browser.ts
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@kixelated kixelated left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Automated review by review (OpenAI)

Reviewed commit: 267d41083800c6adaec110477bf45c1a34c5f2c1.

No actionable bugs found. Updating these expectations to the shipped validation contract is the right, small fix: the renderer case now checks retained values, one error per invalid attribute, and recovery only after every invalid attribute is corrected. The version-list cases retain their refusal/snapshot coverage while using a supported draft. No production API or wire changes.

Verification: static inspection of changed tests, element validation/recovery code, supported versions and migration notes. Browser tests and scheduled Interop/Video runs were not run or independently verified.

(Written by gpt-6.1-sol)

@pullfrog pullfrog Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ No new issues found.

Reviewed changes

  • test/video/renderer.browser.ts — replaces the stale "invalid url/volume resets to default with no errors" expectation with the shipped #6904 contract: last valid value kept, one pageerror per invalid attribute, media suspended, and resume only after every invalid attribute is corrected (partial: [false, true] shows <moq-publish> resumes while <moq-watch> waits on its bad volume). Matches attributeChangedCallback/#accept in js/watch/src/element.ts and js/publish/src/element.ts.
  • test/interop/clients/js/publish-ui.browser.ts — uses moq-transport-18 (removed draft -14 replaced) wherever the test means a supported version; the refusal case still uses unsupported moq-lite-99. moq-transport-18/20/22 are all present in VERSIONS (js/net/src/connection/connect.ts:90).
  • Quest bookkeeping — deletes the last child quest/m0/interop-green/stale-browser-tests.md, drops its ## Required link, and retitles the epic [XS] with the Plan noting every child has landed. No dangling references remain.

Verified the element suspend/resume and version-refusal behavior against source, not just the diff. I also checked for other stale moq-transport-14..17 uses: the remaining ones (test/interop/compat/resolve.test.ts, js/net/src/connection/connect.test.ts) are a synthetic released-version list and intentional refusal cases, both out of scope. Test-only change; no public API or wire impact.

Pullfrog  | View workflow run | Using deepseek-v4.1-flash (free via Pullfrog for OSS) | 𝕏

@kixelated
kixelated enabled auto-merge (squash) November 1, 2026 23:18
@kixelated
kixelated added this pull request to the merge queue Nov 2, 2026
Merged via the queue into main with commit 274d322 Nov 2, 2026
7 checks passed
@kixelated
kixelated deleted the quest/m0/interop-green/stale-browser-tests branch November 2, 2026 10:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant