SIENTIAPDE-2202 Add gateway end-to-end test suite (e2e/) End-to-end suite at the repo root, following the Laborious/Orchestrator pattern: numbered scenarios per topic in e2e/scenarios.md (1:1 with test_scenario_* functions), scenario inputs as JSON, Postgres DDL mirrored from production, `integration` marker, excluded from the default pytest run. Every dependency runs for real: MongoDB, Redis, PostgreSQL, MinIO and NATS via testcontainers, OPC UA servers in process (asyncua). Pods are built from the environment like ingestor/app.py and driven one loop iteration at a time. 69 scenarios across 7 topics: slot leasing and failover, subscription reads, NATS writes and write_status (incl. the SIENTIAPDE-2202 timestamp/quality matrix, checked on the server and on the wire), gRPC ReadTag, active reads, client certificates/security, pod lifecycle. Replaces tests/functional (legacy slot v1 tests, fully commented out) and tests/functional/test_write_e2e.py (now scenarios 3.1.x). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
20 lines
477 B
JSON
20 lines
477 B
JSON
{
|
|
"plant-a": {
|
|
"name": "plant-a",
|
|
"server_id": "1",
|
|
"url": "@server:plant-a",
|
|
"subscription_period_ms": 100,
|
|
"security": {"mode": "None", "policy": "None"},
|
|
"certificate": null,
|
|
"tags": {
|
|
"ns=2;s=Temperature": {
|
|
"frequency": 1000,
|
|
"active_read": {"enabled": false},
|
|
"names": [
|
|
{"collection": "raw_plant_a", "tag_name": "temperature", "model_id": "10", "model_name": "furnace"}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|