Reproduces the production failure locally so we can iterate in seconds instead of waiting on deploy cycles across 3 repos and PyPI. Existing test_node.py / test_tls.py use the system Erlang which is OTP 24 on most dev boxes (Ubuntu 22.04 default) — silently masks flag-negotiation and protocol bugs that only surface against OTP 25+. Adds four docker-backed tests: - plain dist + hand-coded receive (works on all OTP versions) - TLS dist + hand-coded receive (works on all OTP versions) - TLS dist + Elixir GenServer (FAILS on OTP 25, passes on 26) The last one is the minimum repro of the portal@unsandbox.com failure mode. Once a fix lands, that test goes green and we know the production smoke test will too. Uses --network host to share the host's epmd (Linux-only). Docker mounts from $HOME/.erldistpy-test/ because snap-confined docker can't see /tmp. Tests skip cleanly when docker isn't installed. |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| test_channel.py | ||
| test_epmd.py | ||
| test_etf.py | ||
| test_handshake.py | ||
| test_node.py | ||
| test_node_otp26.py | ||
| test_tls.py | ||