Add web map with zone generation API, side job queue, and restore historical DTM hole rendering
- webapp.py: FastAPI serving the continuous map (port 8973) with /api/preview, /api/generate and /api/status; tiles are downloaded from IGN and processed in a logged subprocess, tracked live in a side "File de génération" panel that survives page reloads - fetch_ign.py: download missing 1 km LiDAR HD tiles from the IGN geoplateforme before processing - index.py: tile thumbnails and 500 m subtiles are now invalidated by mtime so regenerating a tile refreshes its cached images; progress logging per tile - dtm.py: back to the historical gap handling (small gaps filled by fillnodata only, larger holes left as nodata rendered black); lowest-return floor only via --bare-earth, IGN class selection via --ign-classes - cli.py: positional input now optional (--rebuild-index works alone) - docker-compose.yml: serve (GPU, port 8973) and process services; launch via docker compose only (documented in AGENTS.md/AGENTS.md) - tests: 131 passing, incl. regressions for thumbnail staleness, --rebuild-index without input, and nodata rendering
This commit is contained in:
@ -85,4 +85,21 @@ class TestSetupLogging:
|
||||
assert logger.level == logging.DEBUG
|
||||
fmt = logger.handlers[0].formatter._fmt
|
||||
assert "%(filename)s" in fmt
|
||||
assert "%(lineno)d" in fmt
|
||||
assert "%(lineno)d" in fmt
|
||||
|
||||
|
||||
def test_rebuild_index_without_input_arg(tmp_path):
|
||||
"""--rebuild-index fonctionne sans l'argument positionnel input.
|
||||
|
||||
Régression : input était obligatoire alors que --rebuild-index ne
|
||||
l'utilise pas (erreur argparse « the following arguments are required »).
|
||||
"""
|
||||
import subprocess
|
||||
|
||||
r = subprocess.run(
|
||||
[sys.executable, "-m", "lidar_pipeline", "--rebuild-index",
|
||||
"-o", str(tmp_path)],
|
||||
capture_output=True, text=True, timeout=180,
|
||||
)
|
||||
assert r.returncode == 0, r.stderr
|
||||
assert "the following arguments are required" not in r.stderr
|
||||
Reference in New Issue
Block a user