Files
openclaw-mission-control/backend/tests/test_gateway_rpc_connect_scopes.py

25 lines
770 B
Python
Raw Normal View History

from __future__ import annotations
from app.services.openclaw.gateway_rpc import (
GATEWAY_OPERATOR_SCOPES,
GatewayConfig,
_build_connect_params,
)
def test_build_connect_params_sets_explicit_operator_role_and_scopes() -> None:
params = _build_connect_params(GatewayConfig(url="ws://gateway.example/ws"))
assert params["role"] == "operator"
assert params["scopes"] == list(GATEWAY_OPERATOR_SCOPES)
assert "auth" not in params
def test_build_connect_params_includes_auth_token_when_provided() -> None:
params = _build_connect_params(
GatewayConfig(url="ws://gateway.example/ws", token="secret-token"),
)
assert params["auth"] == {"token": "secret-token"}
assert params["scopes"] == list(GATEWAY_OPERATOR_SCOPES)