Skip to content

Split docker tests fixtures#1003

Merged
bpkroth merged 61 commits intomicrosoft:mainfrom
bpkroth:split-docker-tests
Oct 24, 2025
Merged

Split docker tests fixtures#1003
bpkroth merged 61 commits intomicrosoft:mainfrom
bpkroth:split-docker-tests

Conversation

@bpkroth
Copy link
Copy Markdown
Contributor

@bpkroth bpkroth commented Sep 23, 2025

Pull Request

Title

Split docker test fixtures


Description

Splits docker test fixtures so that individual docker-compose projects can be setup and torn down independently.

This improves single test performance (e.g., when SQL tests don't need to setup SSH test fixtures) and parallelism by allowing each to operate independently.


Type of Change

  • 🔄 Refactor
  • 🧪 Tests

Additional Notes (optional)

Should be merged after #994


@bpkroth bpkroth added the ci label Sep 23, 2025
@bpkroth bpkroth marked this pull request as ready for review October 22, 2025 21:18
@bpkroth bpkroth requested a review from a team as a code owner October 22, 2025 21:18
Copilot AI review requested due to automatic review settings October 22, 2025 21:18
Copy link
Copy Markdown
Contributor

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 refactors docker test fixtures to enable independent setup and teardown of different docker-compose projects. This improves test performance by allowing tests to only initialize their required services (e.g., SQL tests don't need SSH fixtures) and enhances parallelism by making docker-compose projects independent.

Key Changes

  • Moved shared docker fixture logic from conftest.py to a new docker_fixtures_util.py module
  • Added fixture-specific docker_compose_file and docker_compose_project_name fixtures in SQL and SSH test suites
  • Updated multiple conftest.py files to import and expose the relocated docker fixtures

Reviewed Changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
mlos_bench/mlos_bench/tests/docker_fixtures_util.py New module containing shared docker fixture implementations previously in main conftest
mlos_bench/mlos_bench/tests/conftest.py Removed docker fixture definitions (moved to docker_fixtures_util.py)
mlos_bench/mlos_bench/tests/storage/sql/fixtures.py Added SQL-specific docker_compose_file and docker_compose_project_name fixtures
mlos_bench/mlos_bench/tests/storage/conftest.py Imports and exposes SQL docker fixtures
mlos_bench/mlos_bench/tests/services/remote/ssh/fixtures.py Added SSH-specific docker_compose_file and docker_compose_project_name fixtures
mlos_bench/mlos_bench/tests/services/remote/ssh/conftest.py Imports and exposes SSH docker fixtures
mlos_bench/mlos_bench/tests/environments/remote/conftest.py Imports and exposes SSH docker fixtures for remote environment tests
mlos_bench/mlos_bench/tests/__init__.py Added imports for grp and pwd modules

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment thread mlos_bench/mlos_bench/tests/storage/sql/fixtures.py Outdated
Comment thread mlos_bench/mlos_bench/tests/services/remote/ssh/fixtures.py Outdated
Comment thread mlos_bench/mlos_bench/tests/docker_fixtures_util.py Outdated
bpkroth and others added 4 commits October 22, 2025 16:29
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@bpkroth bpkroth enabled auto-merge (squash) October 22, 2025 22:04
@bpkroth bpkroth mentioned this pull request Oct 23, 2025
1 task
@bpkroth bpkroth merged commit f5b8e63 into microsoft:main Oct 24, 2025
24 of 28 checks passed
@bpkroth bpkroth deleted the split-docker-tests branch October 24, 2025 11:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants