Skip to content

Check the WKB bytes the generated surface carries its values in - #59

Merged
estebanzimanyi merged 1 commit into
MobilityDB:mainfrom
estebanzimanyi:test/binary-wkb-surface
Sep 28, 2026
Merged

estebanzimanyi merged 1 commit into
MobilityDB:mainfrom
estebanzimanyi:test/binary-wkb-surface

Conversation

@estebanzimanyi

Copy link
Copy Markdown
Member

The generated surface returns a temporal, span, span set or set as its WKB bytes and reads
a column of their hex-WKB text as well. GeneratedSurfaceTest takes the temporal boolean of
#= as byte[], and values_travel_as_wkb_and_hex_wkb_stays_readable reads a temporal and its
span back as byte[], answers the same instant count from the bytes and from the hex text,
reads hex in the big-endian byte order, and aggregates a column of hex text to the answer
over the WKB of the same value. The README states the wire format: WKB bytes for those four
kinds, WKT or EWKT text for geometries, the text form for boxes, circular buffers, network
points and poses.

Witness. The new test fails on the generator of JMEOS 36b3d4316d, whose functions answer
hex text, and on the generator of JMEOS #110 with the type read from one byte, at its
big-endian check, or without the rule reading hex text that reached an aggregate as ASCII
bytes, at its aggregate check.

Measured. Against JMEOS main 04e0a71ee4 (#110), the catalog and libmeos of MobilityDB
3f9ee86639 and the jar JMEOS builds from them, the suite runs 20 tests, all passing.

Why. The test states the form each value travels in, so a change of it reaches the suite
and not only the users of the binding.

The generated surface returns a temporal, span, span set or set as its WKB bytes and reads
a column of their hex-WKB text as well. GeneratedSurfaceTest takes the temporal boolean of
#= as byte[], and values_travel_as_wkb_and_hex_wkb_stays_readable reads a temporal and its
span back as byte[], answers the same instant count from the bytes and from the hex text,
reads hex in the big-endian byte order, and aggregates a column of hex text to the answer
over the WKB of the same value. The README states the wire format: WKB bytes for those four
kinds, WKT or EWKT text for geometries, the text form for boxes, circular buffers, network
points and poses.

Witness. The new test fails on the generator of JMEOS 36b3d4316d, whose functions answer
hex text, and on the generator of JMEOS #110 with the type read from one byte, at its
big-endian check, or without the rule reading hex text that reached an aggregate as ASCII
bytes, at its aggregate check.

Measured. Against JMEOS main 04e0a71ee4 (#110), the catalog and libmeos of MobilityDB
3f9ee86639 and the jar JMEOS builds from them, the suite runs 20 tests, all passing.

Why. The test states the form each value travels in, so a change of it reaches the suite
and not only the users of the binding.
@estebanzimanyi
estebanzimanyi merged commit 14455b8 into MobilityDB:main Sep 28, 2026
2 checks passed
@estebanzimanyi
estebanzimanyi deleted the test/binary-wkb-surface branch September 28, 2026 14:23
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.

1 participant