Thanks to visit codestin.com
Credit goes to github.com

Skip to content

remove cycle-breaker test-crates#2590

Merged
Sebastian Thiel (Byron) merged 3 commits into
mainfrom
independent-testtools
May 9, 2026
Merged

remove cycle-breaker test-crates#2590
Sebastian Thiel (Byron) merged 3 commits into
mainfrom
independent-testtools

Conversation

@Byron
Copy link
Copy Markdown
Member

@Byron Sebastian Thiel (Byron) commented May 8, 2026

This mostly helps the workflow with Zed which deduces tests-to-run by crate.

Tasks

  • refackiew

This means that a trait implementation has to always be passed
for what boils down to ignore handling.

The `standalone` portion of the API is also removed.

Co-authored-by: Sebastian Thiel <[email protected]>
@Byron Sebastian Thiel (Byron) force-pushed the independent-testtools branch 3 times, most recently from 4f9f22c to 63b0c5a Compare May 8, 2026 14:00
@Byron Sebastian Thiel (Byron) marked this pull request as ready for review May 8, 2026 14:04
Copilot AI review requested due to automatic review settings May 8, 2026 14:04
Copy link
Copy Markdown

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 removes the standalone “cycle-breaker” *-tests crates and folds their integration tests back into the primary crates, simplifying test selection (e.g., by tooling like Zed) and reducing workspace member indirection.

Changes:

  • Removed the dedicated */tests/Cargo.toml test-crate manifests and corresponding workspace membership.
  • Updated test code to use non-standalone fixture helpers and added per-test-crate re-exports to keep callsites concise.
  • Adjusted gix-testtools fixture archive exclusion handling behind a new worktree-exclusions feature (now default for gix-testtools itself) and updated justfile test invocations to target the primary crates.

Reviewed changes

Copilot reviewed 77 out of 78 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
tests/tools/tests/tools/rust_fixture.rs Removes standalone fixture path test that no longer applies after folding.
tests/tools/src/lib.rs Removes standalone fixture APIs; adds exclusion abstraction + fallback matcher; routes fixture/archive logic through a single base path.
tests/tools/Cargo.toml Adds worktree-exclusions feature (default) and makes related deps optional.
justfile Updates nextest commands to run tests from primary crates instead of *-tests crates.
gix-worktree/tests/worktree/stack/ignore.rs Switches fixtures to crate::scripted_fixture_read_only.
gix-worktree/tests/worktree/stack/attributes.rs Switches fixtures to crate::scripted_fixture_read_only.
gix-worktree/tests/integrate.rs Re-exports scripted_fixture_read_only for submodules.
gix-worktree/tests/Cargo.toml Removes standalone gix-worktree-tests crate manifest.
gix-worktree/Cargo.toml Adds parallel feature, dev-deps, and explicit [[test]] to host folded tests.
gix-worktree-state/tests/worktree.rs Re-exports scripted_fixture_read_only for submodules.
gix-worktree-state/tests/state/mod.rs Switches fixture helper to crate::scripted_fixture_read_only.
gix-worktree-state/tests/Cargo.toml Removes standalone gix-worktree-state-tests crate manifest.
gix-worktree-state/Cargo.toml Adds parallel feature, dev-deps, and explicit [[test]] for folded tests.
gix-traverse/tests/traverse/util.rs Switches fixture helper to crate::scripted_fixture_read_only.
gix-traverse/tests/traverse/main.rs Re-exports scripted_fixture_read_only for submodules.
gix-traverse/tests/Cargo.toml Removes standalone gix-traverse-tests crate manifest.
gix-traverse/Cargo.toml Adds dev-deps and explicit [[test]] for folded tests.
gix-status/tests/status/stack.rs Switches fixture helper to crate::scripted_fixture_read_only.
gix-status/tests/status/main.rs Re-exports needed fixture helpers; adjusts paths to non-standalone helpers.
gix-status/tests/status/index_as_worktree.rs Switches to crate::scripted_fixture_writable.
gix-status/tests/Cargo.toml Removes standalone gix-status-tests crate manifest.
gix-status/Cargo.toml Enables autotests (removes autotests=false), adds parallel feature and dev-deps for folded tests.
gix-ref/tests/refs/store.rs Updates parallel cfg flag + uses crate::scripted_fixture_read_only.
gix-ref/tests/refs/packed/open.rs Switches from fixture_path_standalone to fixture_path.
gix-ref/tests/refs/packed/iter.rs Switches fixture helper to crate::scripted_fixture_read_only.
gix-ref/tests/refs/packed/find.rs Switches from fixture_path_standalone to fixture_path.
gix-ref/tests/refs/main.rs Re-exports fixture helpers for submodules.
gix-ref/tests/refs/file/worktree.rs Switches to crate::scripted_fixture_*_with_args.
gix-ref/tests/refs/file/store/reflog.rs Switches fixture helper to crate::scripted_fixture_read_only.
gix-ref/tests/refs/file/mod.rs Switches all fixture helpers to crate::* re-exports.
gix-ref/tests/refs/file/log.rs Switches fixture helper to crate::scripted_fixture_read_only.
gix-ref/tests/Cargo.toml Removes standalone gix-ref-tests crate manifest.
gix-ref/Cargo.toml Adds parallel feature, dev-deps, and explicit [[test]] for folded tests.
gix-pack/tests/pack/multi_index/write.rs Switches from fixture_path_standalone to fixture_path.
gix-pack/tests/pack/mod.rs Simplifies fixture re-exports; makes fuzz artifact paths resilient to old/new directory layout.
gix-pack/tests/pack/index.rs Updates parallel cfg flag and fixture_path usage.
gix-pack/tests/pack/data/output/count_and_entries.rs Adds cfg-gating for streaming-input/wasm-specific validation paths.
gix-pack/tests/pack/bundle.rs Gating write-to-directory module behind streaming-input/!wasm.
gix-pack/tests/integrate.rs Re-exports scripted_fixture_read_only for submodules.
gix-pack/tests/Cargo.toml Removes standalone gix-pack-tests crate manifest.
gix-pack/fuzz/README.md Updates instructions to run tests from gix-pack instead of removed test crate.
gix-pack/Cargo.toml Adds parallel feature, dev-deps, and explicit [[test]] for folded tests.
gix-odb/tests/odb/store/loose.rs Switches to fixture_path; updates scripted fixture helper calls.
gix-odb/tests/odb/store/dynamic.rs Switches to fixture_path; updates scripted fixture helper calls; minor formatting.
gix-odb/tests/odb/regression/mod.rs Updates parallel cfg flag and scripted fixture helper usage.
gix-odb/tests/odb/mod.rs Switches to fixture_path for object DB fixtures.
gix-odb/tests/odb/memory.rs Switches scripted fixture helpers to crate::* re-exports.
gix-odb/tests/odb/find/mod.rs Switches to fixture_path.
gix-odb/tests/integrate.rs Re-exports fixture helpers for submodules.
gix-odb/tests/Cargo.toml Removes standalone gix-odb-tests crate manifest.
gix-odb/Cargo.toml Adds parallel feature, dev-deps, and explicit [[test]] for folded tests.
gix-index/tests/integrate.rs Re-exports Result and scripted_fixture_read_only.
gix-index/tests/index/mod.rs Switches fixture helpers to non-standalone variants.
gix-index/tests/index/init.rs Switches to crate::scripted_fixture_read_only via re-export.
gix-index/tests/index/fs.rs Switches fixture helper to crate::scripted_fixture_read_only.
gix-index/tests/index/file/read.rs Switches scripted fixture helper to crate::scripted_fixture_read_only.
gix-index/tests/Cargo.toml Removes standalone gix-index-tests crate manifest.
gix-index/fuzz/README.md Updates instructions to run tests from gix-index instead of removed test crate.
gix-index/Cargo.toml Adds parallel feature, dev-deps, and explicit [[test]] for folded tests.
gix-diff/tests/README.md Updates instructions to run tests from gix-diff instead of removed test crate.
gix-diff/tests/diff/tree.rs Switches to crate::scripted_fixture_read_only_with_args.
gix-diff/tests/diff/tree_with_rewrites.rs Switches to crate::scripted_fixture_read_only.
gix-diff/tests/diff/rewrites/tracker.rs Switches to crate::scripted_fixture_read_only.
gix-diff/tests/diff/main.rs Re-exports scripted fixture helpers at the test crate root.
gix-diff/tests/diff/index.rs Switches to crate::scripted_fixture_read_only.
gix-diff/tests/diff/blob/slider.rs Switches to crate::scripted_fixture_read_only.
gix-diff/tests/diff/blob/platform.rs Switches to crate::scripted_fixture_read_only.
gix-diff/tests/diff/blob/pipeline.rs Switches to crate::scripted_fixture_read_only.
gix-diff/tests/Cargo.toml Removes standalone gix-diff-tests crate manifest.
gix-diff/Cargo.toml Enables autotests (removes autotests=false); adds dev-deps needed by folded tests.
gix-config/tests/config/main.rs Re-exports Result and scripted_fixture_read_only.
gix-config/tests/config/file/mod.rs Switches from fixture_path_standalone to fixture_path; adjusts fuzz artifact path lookup.
gix-config/tests/config/file/init/from_paths/includes/conditional/hasconfig.rs Switches to crate::scripted_fixture_read_only.
gix-config/tests/config/file/init/comfort.rs Switches to crate::scripted_fixture_read_only.
gix-config/tests/Cargo.toml Removes standalone gix-config-tests crate manifest.
gix-config/Cargo.toml Enables autotests (removes autotests=false); adds dev-deps needed by folded tests/benches.
Cargo.toml Removes standalone test crates from workspace members list.
Cargo.lock Updates lockfile to reflect removed test crates and shifted dev-dependencies.

Comment thread tests/tools/src/lib.rs
Comment thread tests/tools/src/lib.rs
Copilot AI review requested due to automatic review settings May 8, 2026 15:17
Copy link
Copy Markdown

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

Copilot reviewed 95 out of 97 changed files in this pull request and generated 1 comment.

Comment thread gix-worktree-state/Cargo.toml Outdated
Copilot AI review requested due to automatic review settings May 8, 2026 16:07
Copy link
Copy Markdown

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

Copilot reviewed 95 out of 97 changed files in this pull request and generated no new comments.

Codex (codex) and others added 2 commits May 9, 2026 09:26
Co-authored-by: Sebastian Thiel <[email protected]>
These were an artifact of the past where this was needed to hide
modules from `autotests = true`.

Finally the structure for integration tests has settled,
so lets make sure it's there.
@Byron Sebastian Thiel (Byron) merged commit 575113d into main May 9, 2026
32 checks passed
@Byron Sebastian Thiel (Byron) deleted the independent-testtools branch May 9, 2026 01:51
@Byron Sebastian Thiel (Byron) restored the independent-testtools branch May 9, 2026 01:53
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.

3 participants