#!/usr/bin/env python3 """ 测试会议控制功能 """ import requests API_BASE = 'http://localhost:8000/api/v1' def test_meeting_control(): print("="*60) print("🎛️ 测试会议控制功能") print("="*60) # 登录 res = requests.post(f'{API_BASE}/auth/login/', json={ 'username': 'test', 'password': 'test123' }) token = res.json()['token'] headers = {'Authorization': f'Bearer {token}'} print(f"✅ 登录成功") # 创建会议 res = requests.post(f'{API_BASE}/meetings/', json={ 'topic': '会议控制测试' }, headers=headers) meeting = res.json() meeting_id = meeting['id'] print(f"✅ 创建会议:{meeting_id}") print(f" 初始状态:{meeting['status']}") # 开始会议 res = requests.post(f'{API_BASE}/meetings/{meeting_id}/start/', headers=headers) if res.status_code == 200: print(f"✅ 开始会议成功") print(f" 状态:{res.json()}") else: print(f"❌ 开始会议失败:{res.text}") return False # 获取会议详情(检查状态) res = requests.get(f'{API_BASE}/meetings/{meeting_id}/', headers=headers) meeting = res.json() print(f" 当前状态:{meeting['status']}") # 发送消息(会议中) res = requests.post(f'{API_BASE}/meetings/{meeting_id}/send_message/', json={ 'content': '会议进行中...' }, headers=headers) if res.status_code == 201: print(f"✅ 会议中发送消息成功") else: print(f"❌ 发送消息失败:{res.text}") # 结束会议 res = requests.post(f'{API_BASE}/meetings/{meeting_id}/end/', headers=headers) if res.status_code == 200: print(f"✅ 结束会议成功") print(f" 状态:{res.json()}") else: print(f"❌ 结束会议失败:{res.text}") return False # 获取会议详情(检查状态) res = requests.get(f'{API_BASE}/meetings/{meeting_id}/', headers=headers) meeting = res.json() print(f" 最终状态:{meeting['status']}") # 尝试在已结束的会议发消息(应该失败) res = requests.post(f'{API_BASE}/meetings/{meeting_id}/send_message/', json={ 'content': '会议结束后发消息' }, headers=headers) print(f" 结束后发消息:{res.status_code} (预期失败)") print("\n" + "="*60) print("✅ 会议控制测试通过!") print("="*60) return True if __name__ == '__main__': test_meeting_control()