Fix browser test execution and failure reporting by jidicula · Pull Request #9061 · microsoft/vscode-pull-request-github · GitHub
Skip to content

Fix browser test execution and failure reporting - #9061

Open
Johanan (jidicula) wants to merge 2 commits into
microsoft:mainfrom
jidicula:jidicula/graphql-browser-test-harness-20261009
Open

Johanan (jidicula) wants to merge 2 commits into
microsoft:mainfrom
jidicula:jidicula/graphql-browser-test-harness-20261009

Conversation

@jidicula

@jidicula Johanan (jidicula) commented Oct 13, 2026 •

Copy link
Copy Markdown

The browser runner can stop discovering tests at a Node-only import and still report success. This fixes web-host startup and failure reporting, and makes the shared tests work with the existing browser dependencies.

The separate test bundle uses CommonJS, including Apollo's CommonJS entry, so the existing Sinon module stubs take effect. The shipped extension keeps its current module format. Browser execution remains disabled in azure-pipeline.pr.yml and azure-pipeline.nightly.yml; this change repairs the runner without enabling those jobs.

Debug Web Test now builds the web extension and test bundle before starting the test server. This also removes a graduated API proposal that broke type downloads and corrects indentation filtering for .github YAML workflows.

This is the prerequisite for the separate GraphQL User-Agent change.

Closes https://github.com/github/graphql-platform/issues/5142

Authored by Copilot, guided by Johanan (@jidicula).

Johanan (jidicula) and others added 2 commits October 9, 2026 10:51
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 6dde41da-ec25-4370-b26c-b036d0a53b3c
Update browser fixtures and debug builds, repair hidden-workflow hygiene filtering, and remove the graduated agents window proposal.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 6dde41da-ec25-4370-b26c-b036d0a53b3c
@jidicula
Johanan (jidicula) force-pushed the jidicula/graphql-browser-test-harness-20261009 branch from 373ce40 to 31fc500 Compare October 20, 2026 11:09
@jidicula
Johanan (jidicula) marked this pull request as ready for review October 20, 2026 11:35
Copilot AI balanced review requested due to automatic review settings October 20, 2026 11:35

Copilot AI commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

Copilot AI 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.

🔵 Needs a closer look

Browser startup, failure propagation, and module-stub compatibility still need end-to-end validation.

No open issues 🎉

What changed in this PR

Repairs browser test startup and failure reporting while preserving the shipped extension’s module format. Browser CI jobs remain disabled.

Changes:

  • Separates the browser test bundle and propagates discovery and execution failures.
  • Adapts shared tests and mocks for browser compatibility.
  • Updates debug setup, removes a graduated API proposal, and corrects workflow indentation filtering.
File Description
webpack.config.js Adds a separate CommonJS browser test bundle.
src/​test/​view/​prsTree.test.ts Uses browser-compatible assertions.
src/​test/​scripts/​hygiene.test.ts Tests workflow indentation exclusions.
src/​test/​node/​getModifiedContentFromDiffHunk.test.ts Corrects the fixture path.
src/​test/​mocks/​mockExtensionContext.ts Avoids Node filesystem storage in browsers.
src/​test/​github/​updateStackBranches.test.ts Uses a browser-compatible assertion.
src/​test/​github/​repositoriesManager.test.ts Uses browser-compatible assertions.
src/​test/​github/​pullRequestOverview.test.ts Adds web UI coverage and compatible assertions.
src/​test/​github/​markdownUtils.test.ts Uses browser-compatible assertions.
src/​test/​github/​createPRViewProvider.test.ts Stubs URI handling and adapts assertions.
src/​test/​github/​conflictGuide.test.ts Uses a browser-compatible assertion.
src/​test/​github/​authIssuers.test.ts Uses browser-compatible assertions.
src/​test/​github/​activityBarViewProvider.test.ts Tests web UI stack-update restrictions.
src/​test/​browser/​runTests.ts Enables ESM hosting and unsuccessful exit reporting.
src/​test/​browser/​index.ts Propagates startup errors and excludes Node-only tests.
src/​@types/​vscode.proposed.agentsWindowActivation.d.ts Removes the obsolete proposal placeholder.
package.json Updates browser build scripts and proposal registration.
eslint.config.mjs Ignores downloaded browser test artifacts.
build/​filters.js Excludes .github YAML from indentation checks.
.vscode/​tasks.json Adds sequential browser test builds.
.vscode/​launch.json Builds before debugging and enables ESM hosting.

Review effort: Balanced

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