"""Swagger 模块 5(群管理)— 真实联调(QIWEI_ROOM_IDS + QiWe sync)""" import pytest pytestmark = [pytest.mark.integration, pytest.mark.qiwei_live] @pytest.fixture(scope="module") def m05_rooms(api_session, live_guid, live_room_ids): data = api_session.assert_success( api_session.post( "/rooms/sync", json={"guid": live_guid, "roomIdList": live_room_ids}, ) ) return {"room_ids": live_room_ids, "rooms": data["rooms"]} def test_m05_sync_rooms(api, live_guid, m05_rooms): data = api.assert_success( api.post( "/rooms/sync", json={"guid": live_guid, "roomIdList": m05_rooms["room_ids"]}, ) ) assert data["roomCount"] == len(m05_rooms["room_ids"]) def test_m05_rooms_list(api, m05_rooms): rooms = api.assert_success(api.get("/rooms")) for rid in m05_rooms["room_ids"]: assert any(r["roomId"] == rid for r in rooms) def test_m05_all_health(api, m05_rooms): health = api.assert_success(api.get("/rooms/health")) assert isinstance(health, list) ids = {h["roomId"] for h in health} for rid in m05_rooms["room_ids"]: assert rid in ids def test_m05_room_detail(api, m05_rooms): for rid in m05_rooms["room_ids"]: room = api.assert_success(api.get(f"/rooms/{rid}")) assert room["roomId"] == rid def test_m05_room_health(api, m05_rooms): for rid in m05_rooms["room_ids"]: h = api.assert_success(api.get(f"/rooms/{rid}/health")) assert "healthScore" in h def test_m05_member_events_sync(api, live_guid, m05_rooms): for rid in m05_rooms["room_ids"]: data = api.assert_success( api.post( "/rooms/member-events/sync", json={"guid": live_guid, "roomId": rid, "ver": 0}, ) ) assert "events" in data assert "nextVer" in data def test_m05_member_events_list(api, m05_rooms): events = api.assert_success(api.get("/rooms/member-events")) assert isinstance(events, list)