geotiff tests: consolidate VRT tail cluster#2464
Merged
Merged
Conversation
Fold the 12 VRT-residue files into existing vrt/ modules plus a new vrt/test_parity.py: - missing-sources trio (1843 internal entry point + STRICT env, 1860 public default, 1799/2265 chunked policy) -> vrt/test_missing_sources.py - srcrect-validation (1784), kwarg-drop (1685), tiled-validation (1862) -> vrt/test_validation.py - lazy-chunks (1798), dask-vrt-kwargs (1795) -> vrt/test_window.py - backend-parity (2321), finalization-parity (2162), backend-coverage (2026_05_11) -> new vrt/test_parity.py Update release_gate_geotiff.rst rows to cite the consolidated homes so the checklist-parity gate stays green. CLUSTER_AUDIT_VRT_TAIL.md maps every old file::test to its new home and is deleted before merge.
brendancol
commented
May 26, 2026
Contributor
Author
brendancol
left a comment
There was a problem hiding this comment.
PR Review: geotiff tests: consolidate VRT tail cluster
Tests-only consolidation. I read the four touched test files in full, the new vrt/test_parity.py, the deleted originals on main, the release-gate checklist, and the checklist-parity gate that enforces it. Verified locally on the PR branch.
Blockers
None.
Suggestions
None blocking.
Nits
vrt/test_missing_sources.pyhastest_build_raises_immediatelyin bothTestChunkedMissingSourcesRaiseSmokeandTestRaiseAtBuild. The node IDs differ because they are class-qualified, so this is not a collision, and it mirrors the_1799/_2265split on main. Fine to leave; flagging only in case someone greps bare method names later.
What looks good
- Test count is conserved.
vrt/test_parity.pycollects exactly 55 nodes, matching the 55 across the three files it re-homes (_2321+_2162+_2026_05_11). The full geotiff suite passes with the same skip/xfail profile (5820 passed, 68 skipped, 2 xfailed), so nothing was silently dropped. - The
_GOLDENfixture path intest_parity.pycorrectly gained one.parentfor the move fromtests/totests/vrt/; it resolves to the realgolden_corpus/fixturesdir. - The
_1843internal_vrt.read_vrtentry point and theXRSPATIAL_GEOTIFF_STRICT=1env override are both preserved, as the issue asked. - Release-gate
.rstrows that cited the deleted files now cite the consolidated homes, and the checklist-parity gate (release_gates/test_stable_features.py -m release_gate) passes: 158 passed, 1 xfailed. - The
_1784srcrect tests were ported fromtempfile.TemporaryDirectorytotmp_pathwithout changing behaviour; the relative-source VRT still resolves because the VRT and its source share the tmp dir. - Helper functions are prefixed per fold (
_raise_*,_srcrect_*,_kwarg_drop_*,_vrttail_*,_tiled_validation_*), so no cross-fold helper shadows another. - Appended code is clean under the project's
max-line-length=100.
Checklist
- No source changes (tests-only, as required)
- All implemented backends preserved (GPU tests stay skipif-gated)
- No tests silently dropped (node count conserved)
- Release-gate citations updated; checklist-parity gate green
- Audit file present; deleted before merge
- Temp / VRT filenames unique per test via tmp_path
- Full geotiff suite passes
The georef/rotation cluster (#2463) moved test_no_georef_windowed_coords_1710.py into read/test_georef.py but left the reader.windowed row in release_gate_geotiff.rst citing the deleted path. Repoint it so the checklist-parity gate stays green on the merged branch.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Closes #2437. Cluster 13 of the long-tail GeoTIFF test consolidation epic (#2424).
Summary
Fold the 12 VRT-tail residue files into existing
vrt/modules plus one newvrt/test_parity.py. No source changes; tests only.Mapping:
vrt/test_missing_sources.py. The_1843internal_vrt.read_vrtentry point and theXRSPATIAL_GEOTIFF_STRICT=1env override are both preserved;_1860adds the publicread_vrt/open_geotiff('.vrt')default-raise coverage;_1799and_2265add the chunked-path policy (vrt_holes at build, raise-at-build, window / band scoping, multi-source preview)._1784), kwarg-drop (_1685), tiled-validation (_1862) ->vrt/test_validation.py._1798) and directread_geotiff_dask('.vrt')kwargs (_1795) ->vrt/test_window.py._2321), finalization-parity (_2162), backend-coverage (_2026_05_11) -> a newvrt/test_parity.py. These three are cohesive parity / coverage suites with their own harness, so they re-home as a group rather than fold into the matrix harness inparity/test_backend_matrix.py.The
_2321parity helpers gained one.parenton thegolden_corpusfixture path because the file moved fromtests/intotests/vrt/. Every other test is preserved with identical assertions; names dropped trailing issue numbers where the originating file namespaced them.docs/source/reference/release_gate_geotiff.rstrows that cited the deleted files now cite the consolidated homes, so the checklist-parity gate inrelease_gates/test_stable_features.pystays green.Audit
xrspatial/geotiff/tests/CLUSTER_AUDIT_VRT_TAIL.mdmaps every oldfile::testto its newfile::test_id. It is deleted on a final commit on this branch before merge.Verification
pytest xrspatial/geotiff/tests/vrt/: 477 passed, 1 xfailed.pytest xrspatial/geotiff/tests/release_gates/test_stable_features.py -m release_gate: 158 passed, 1 xfailed.pytest xrspatial/geotiff/tests/: 5820 passed, 68 skipped, 2 xfailed.find xrspatial/geotiff/tests -name 'test_*.py' | wc -l: 175 (was 186; -12 deleted +1 added).Test plan
vrt/test_parity.pypasses.vrt/modules pass.