mirror of
https://github.com/BigBodyCobain/Shadowbroker.git
synced 2026-07-11 22:46:38 +02:00
85 lines
2.8 KiB
Python
85 lines
2.8 KiB
Python
from services.mesh.mesh_fleet_defaults import (
|
|
FLEET_SEED_ONION_URL,
|
|
FLEET_PEER_PUSH_SECRET,
|
|
configured_bootstrap_seed_peers_with_fleet_default,
|
|
effective_bootstrap_signer_public_key_b64,
|
|
effective_fleet_seed_peers,
|
|
effective_peer_push_secret,
|
|
infonet_fleet_join_enabled,
|
|
)
|
|
|
|
|
|
def test_fleet_defaults_apply_when_join_enabled(monkeypatch):
|
|
from services.config import get_settings
|
|
|
|
monkeypatch.setenv("MESH_BOOTSTRAP_SIGNER_PUBLIC_KEY", "")
|
|
monkeypatch.setenv("MESH_PEER_PUSH_SECRET", "")
|
|
monkeypatch.setenv("MESH_INFONET_FLEET_JOIN", "true")
|
|
get_settings.cache_clear()
|
|
try:
|
|
assert infonet_fleet_join_enabled() is True
|
|
assert effective_bootstrap_signer_public_key_b64()
|
|
assert effective_peer_push_secret() == FLEET_PEER_PUSH_SECRET
|
|
finally:
|
|
get_settings.cache_clear()
|
|
|
|
|
|
def test_empty_bootstrap_peers_use_fleet_seed_defaults(monkeypatch):
|
|
from services.config import get_settings
|
|
|
|
monkeypatch.delenv("MESH_FLEET_SEED_PEERS", raising=False)
|
|
monkeypatch.setenv("MESH_INFONET_FLEET_JOIN", "true")
|
|
get_settings.cache_clear()
|
|
try:
|
|
assert configured_bootstrap_seed_peers_with_fleet_default([]) == [FLEET_SEED_ONION_URL]
|
|
finally:
|
|
get_settings.cache_clear()
|
|
|
|
|
|
def test_configured_bootstrap_peers_override_fleet_defaults(monkeypatch):
|
|
from services.config import get_settings
|
|
|
|
monkeypatch.setenv("MESH_INFONET_FLEET_JOIN", "true")
|
|
get_settings.cache_clear()
|
|
try:
|
|
assert configured_bootstrap_seed_peers_with_fleet_default(
|
|
["http://alphaexample.onion:8000", "http://alphaexample.onion:8000"]
|
|
) == ["http://alphaexample.onion:8000"]
|
|
finally:
|
|
get_settings.cache_clear()
|
|
|
|
|
|
def test_fleet_seed_override_can_ship_multiple_seeds(monkeypatch):
|
|
from services.config import get_settings
|
|
|
|
monkeypatch.setenv(
|
|
"MESH_FLEET_SEED_PEERS",
|
|
"http://alphaexample.onion:8000,http://betaexample.onion:8000,http://alphaexample.onion:8000",
|
|
)
|
|
get_settings.cache_clear()
|
|
try:
|
|
assert effective_fleet_seed_peers() == [
|
|
"http://alphaexample.onion:8000",
|
|
"http://betaexample.onion:8000",
|
|
]
|
|
assert configured_bootstrap_seed_peers_with_fleet_default([]) == [
|
|
"http://alphaexample.onion:8000",
|
|
"http://betaexample.onion:8000",
|
|
]
|
|
finally:
|
|
get_settings.cache_clear()
|
|
|
|
|
|
def test_fleet_defaults_disabled(monkeypatch):
|
|
from services.config import get_settings
|
|
|
|
monkeypatch.setenv("MESH_BOOTSTRAP_SIGNER_PUBLIC_KEY", "")
|
|
monkeypatch.setenv("MESH_PEER_PUSH_SECRET", "")
|
|
monkeypatch.setenv("MESH_INFONET_FLEET_JOIN_DISABLED", "true")
|
|
get_settings.cache_clear()
|
|
try:
|
|
assert infonet_fleet_join_enabled() is False
|
|
assert effective_peer_push_secret() == ""
|
|
finally:
|
|
get_settings.cache_clear()
|