Invalid U64 F64 Bounds
Synthetic invalid CityJSON fixture that uses stored vertex values above u64::MAX and transform values outside the f64 range. The input remains syntactically valid JSON, but implementations that coerce the numeric fields into bounded integer or float types should reject it.
Case
id:invalid_u64_f64_boundslayer:invalidfamily:invalidartifact_mode:checked-insource_kind:syntheticrepresentation:cityjsonpath:cases/invalid/invalid_u64_f64_bounds
Files
source:cases/invalid/invalid_u64_f64_bounds/invalid_u64_f64_bounds.json
Source JSON
case.json
{
"artifact_mode": "checked-in",
"artifact_paths": {
"source": "cases/invalid/invalid_u64_f64_bounds/invalid_u64_f64_bounds.json"
},
"assertions": [
"rejects_numeric_bounds_overflow"
],
"cityjson_version": "2.0",
"description": "Synthetic invalid CityJSON fixture that uses stored vertex values above `u64::MAX` and transform values outside the `f64` range. The input remains syntactically valid JSON, but implementations that coerce the numeric fields into bounded integer or float types should reject it.",
"family": "invalid",
"geometry_kind": "dummy",
"id": "invalid_u64_f64_bounds",
"layer": "invalid",
"representation": "cityjson",
"source_kind": "synthetic",
"version": 2
}
invariants.json
{
"checks": [
{
"description": "CityJSON readers reject vertices and transform values outside u64/f64 bounds.",
"id": "rejects_numeric_bounds_overflow"
}
],
"expected_result": "reject",
"fixture": "invalid_u64_f64_bounds.json",
"id": "invalid_u64_f64_bounds",
"kind": "negative",
"version": 1
}