Skip to content

Conversation

@eleanorjboyd
Copy link
Member

No description provided.

@eleanorjboyd eleanorjboyd self-assigned this Feb 6, 2026
@eleanorjboyd eleanorjboyd added feature-request Request for new features or functionality skip tests Updates to tests unnecessary skip-issue-check labels Feb 6, 2026
@eleanorjboyd eleanorjboyd marked this pull request as ready for review February 6, 2026 23:59
@eleanorjboyd eleanorjboyd requested a review from Copilot February 7, 2026 00:02
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR adds project-aware pytest execution support to the test controller flow by wiring Python Environments “projects” into execution/debugging, and introducing shared helpers + unit tests to validate the new behavior in multi-project workspaces.

Changes:

  • Add project-based test execution orchestration (executeTestsForProjects, grouping test items by owning project, per-project execution).
  • Pass project context into pytest execution and debugging (env var PROJECT_ROOT_PATH, LaunchOptions.project, project-derived Python path/session naming).
  • Add centralized test mocks and new/updated unit tests covering project execution and debug-session lifecycle handling.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
src/client/testing/testController/common/projectTestExecution.ts New project-based execution utilities (grouping, project lookup, coverage callback setup).
src/client/testing/testController/controller.ts Routes pytest runs through project-based execution when projects are registered.
src/client/testing/testController/pytest/pytestExecutionAdapter.ts Sets project execution environment (PROJECT_ROOT_PATH) and passes project into debug launch options; uses project environment when available.
src/client/testing/testController/unittest/testExecutionAdapter.ts Updates execution adapter signature and adds logging around new parameters.
src/client/testing/common/debugLauncher.ts Supports concurrent debug sessions via a per-launch marker; uses project name/python path when available.
src/client/testing/common/types.ts Extends LaunchOptions to include optional project metadata.
src/test/testing/testController/testMocks.ts Adds reusable mocks for project adapters, dependencies, and test items.
src/test/testing/testController/pytest/pytestExecutionAdapter.unit.test.ts Adds unit tests validating project env var + debug launch options behavior for pytest.
src/test/testing/testController/common/projectTestExecution.unit.test.ts Adds comprehensive unit tests for grouping, project resolution, execution orchestration, and coverage callback behavior.
src/test/testing/common/debugLauncher.unit.test.ts Updates and adds tests for multi-session debug lifecycle tracking and project-specific config naming.

@eleanorjboyd eleanorjboyd merged commit 3b87651 into microsoft:test-project-support Feb 9, 2026
78 of 82 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature-request Request for new features or functionality skip tests Updates to tests unnecessary skip-issue-check

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant