Skip to content

v.what.strds: make the test data position-dependent - #7930

Merged
echoix merged 2 commits into
OSGeo:mainfrom
Valyrian-Code:v.what.strds-test-data
Oct 9, 2026
Merged

echoix merged 2 commits into
OSGeo:mainfrom
Valyrian-Code:v.what.strds-test-data

Conversation

@Valyrian-Code

@Valyrian-Code Valyrian-Code commented Sep 19, 2026 •

Copy link
Copy Markdown
Contributor

Follow-up to #7898, where @ninsbl pointed out each raster held a single value, so a point sampled the same number wherever it sat.

Rasters are now map_number * 1000 + row() * 10 + col(), with the points at known cell centres via v.in.ascii instead of seeded v.random. Checked both failure modes fail now and passed before: moving a point one cell east, and swapping two points' categories.

Also the two Copilot notes from #7898: whole rows are compared instead of dropping the category column, and the docstring no longer claims the points share a location.

The rasters held a single value each, so a point sampled the same number
wherever it was and a pixel shift or a reordered point could not change
the result. Each raster is now map_number * 1000 + row() * 10 + col(), and
the points sit at known cell centres created with v.in.ascii instead of
seeded v.random, so every cell holds a distinct value.

The row assertion now compares whole rows including the category, rather
than dropping the first column, and the fixture docstring no longer claims
the points share a location.

Follow-up to OSGeo#7898, as discussed there.
@github-actions github-actions Bot added vector Related to vector data processing Python Related code is in Python module tests Related to Test Suite labels Sep 19, 2026
@Valyrian-Code
Valyrian-Code marked this pull request as ready for review September 27, 2026 20:58
Copilot AI lite review requested due to automatic review settings September 27, 2026 20:58

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot review overview

🟡 Changes recommended

Fix the non-unique raster encoding and sort query results by category before comparison.

Review effort: Lite
Findings: 1 Medium severity

Open (1)
What changed in this PR

Updates v.what.strds tests with deterministic points and position-dependent raster values.

Changes:

  • Uses known cell-centre coordinates.
  • Encodes raster row and column positions.
  • Compares complete output rows, including categories.
File Summary
scripts/​v.what.strds/​tests/​v_what_strds_test.py Strengthens test data and assertions.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread scripts/v.what.strds/tests/v_what_strds_test.py Outdated
@echoix
echoix requested a review from ninsbl October 1, 2026 16:46
row() * 10 + col() collides once the region has more than nine columns:
with twelve, (row 1, col 11) and (row 2, col 1) both give 21. The three
sampled cells happened not to collide, so the test passed, but the comment
claimed more than the encoding delivered. Use row() * 100 + col().
@echoix
echoix merged commit 05d8652 into OSGeo:main Oct 9, 2026
26 checks passed
@github-actions github-actions Bot added this to the 8.6.0 milestone Oct 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

module Python Related code is in Python tests Related to Test Suite vector Related to vector data processing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants