mirror of
https://github.com/BigBodyCobain/Shadowbroker.git
synced 2026-05-09 10:45:44 +02:00
6ffd54931c
Ship the 0.9.75 source update with improved startup/runtime hardening, operator API key onboarding, Meshtastic MQTT controls, Infonet/MeshChat separation, desktop package versioning, and aircraft telemetry refinements. Also updates focused backend/frontend tests for node settings, Meshtastic MQTT settings, and desktop runtime behavior.
51 lines
1.9 KiB
Python
51 lines
1.9 KiB
Python
def test_node_settings_roundtrip(tmp_path, monkeypatch):
|
|
from services import node_settings
|
|
|
|
settings_path = tmp_path / "node.json"
|
|
monkeypatch.setattr(node_settings, "NODE_FILE", settings_path)
|
|
monkeypatch.setattr(node_settings, "_cache", None)
|
|
monkeypatch.setattr(node_settings, "_cache_ts", 0.0)
|
|
|
|
initial = node_settings.read_node_settings()
|
|
disabled = node_settings.write_node_settings(enabled=False)
|
|
updated = node_settings.write_node_settings(enabled=True)
|
|
reread = node_settings.read_node_settings()
|
|
|
|
assert initial["enabled"] is True
|
|
assert initial["operator_disabled"] is False
|
|
assert disabled["enabled"] is False
|
|
assert disabled["operator_disabled"] is True
|
|
assert updated["enabled"] is True
|
|
assert updated["operator_disabled"] is False
|
|
assert reread["enabled"] is True
|
|
|
|
|
|
def test_legacy_disabled_node_settings_auto_enable(tmp_path, monkeypatch):
|
|
from services import node_settings
|
|
|
|
settings_path = tmp_path / "node.json"
|
|
settings_path.write_text('{"enabled": false, "updated_at": 123}', encoding="utf-8")
|
|
monkeypatch.setattr(node_settings, "NODE_FILE", settings_path)
|
|
monkeypatch.setattr(node_settings, "_cache", None)
|
|
monkeypatch.setattr(node_settings, "_cache_ts", 0.0)
|
|
|
|
reread = node_settings.read_node_settings()
|
|
|
|
assert reread["enabled"] is True
|
|
assert reread["operator_disabled"] is False
|
|
|
|
|
|
def test_explicit_operator_disabled_stays_disabled(tmp_path, monkeypatch):
|
|
from services import node_settings
|
|
|
|
settings_path = tmp_path / "node.json"
|
|
settings_path.write_text('{"enabled": false, "operator_disabled": true, "updated_at": 123}', encoding="utf-8")
|
|
monkeypatch.setattr(node_settings, "NODE_FILE", settings_path)
|
|
monkeypatch.setattr(node_settings, "_cache", None)
|
|
monkeypatch.setattr(node_settings, "_cache_ts", 0.0)
|
|
|
|
reread = node_settings.read_node_settings()
|
|
|
|
assert reread["enabled"] is False
|
|
assert reread["operator_disabled"] is True
|