Fix diff_and_patch_bsdiff test with unique SQLite database names #2480
+11
−8
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The
diff_and_patch_bsdifftest was failing withNonEmptyTargetFileerrors due to database name conflicts in SQLite's shared in-memory mode when tests ran in parallel.Changes
(a_type, b_type, dif_type, dst_type)for complete test coverage with 32 combinations (2⁴ × 2 tilesets)#[ignore]attribute: Test now runs as part of the standard test suiteSolution
The root cause was insufficient uniqueness in SQLite in-memory database names. When multiple test combinations ran in parallel with
cache=sharedmode, they created databases with identical names, causingNonEmptyTargetFileerrors.Fixed by generating unique identifiers that include all type parameters:
This ensures each test combination gets a unique database name like
v1aflatbflatdflatdstflatbin-diff-raw_difforv1ahashbhashdhashdstflatbin-diff-raw_diff, preventing collisions.Test Results
Original prompt
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.