import pytest from .test_helpers import DummyContext import services.tools.manage_scene as manage_scene_mod @pytest.mark.asyncio async def test_manage_scene_get_hierarchy_paging_params_pass_through(monkeypatch): captured = {} async def fake_send(cmd, params, **kwargs): captured["params"] = params return {"success": True, "data": {}} monkeypatch.setattr( manage_scene_mod, "async_send_command_with_retry", fake_send, ) resp = await manage_scene_mod.manage_scene( ctx=DummyContext(), action="get_hierarchy", parent="Player", page_size="10", cursor="20", max_nodes="1000", max_depth="6", max_children_per_node="200", include_transform="true", ) assert resp.get("success") is True p = captured["params"] assert p["action"] == "get_hierarchy" assert p["parent"] == "Player" assert p["pageSize"] in (10, "10") assert p["cursor"] in (20, "20") assert p["maxNodes"] in (1000, "1000") assert p["maxDepth"] in (6, "6") assert p["maxChildrenPerNode"] in (200, "200") assert p["includeTransform"] in (True, "true")