| """验证 tools.py 修复后的功能""" |
|
|
| import sys |
| sys.path.append('E:\\GitHub\\z.ai2api_python') |
|
|
| from app.utils.tools import remove_tool_json_content |
|
|
| def test_remove_tool_json(): |
| print("=" * 60) |
| print("验证 tools.py 中的 remove_tool_json_content 函数") |
| print("=" * 60) |
| |
| |
| test1 = '{"tool_calls": [{"id": "call_1", "type": "function"}]}' |
| result1 = remove_tool_json_content(test1) |
| print(f"\n测试1 - 纯工具调用:") |
| print(f"输入: {test1}") |
| print(f"输出: '{result1}'") |
| print("[PASS] 通过" if result1 == "" else "[FAIL] 失败") |
| |
| |
| test2 = '''这是开始文本 |
| {"tool_calls": [{"id": "call_2", "type": "function"}]} |
| 这是结束文本''' |
| result2 = remove_tool_json_content(test2) |
| print(f"\n测试2 - 混合内容:") |
| print(f"输入: {repr(test2)}") |
| print(f"输出: {repr(result2)}") |
| expected2 = "这是开始文本\n\n这是结束文本" |
| print("[PASS] 通过" if result2 == expected2 else "[FAIL] 失败") |
| |
| |
| test3 = '{"data": {"result": "success"}}' |
| result3 = remove_tool_json_content(test3) |
| print(f"\n测试3 - 普通JSON:") |
| print(f"输入: {test3}") |
| print(f"输出: '{result3}'") |
| print("[PASS] 通过" if result3 == test3 else "[FAIL] 失败") |
| |
| |
| test4 = '''正常文本 |
| ```json |
| {"tool_calls": [{"id": "call_3"}]} |
| ``` |
| 保留文本''' |
| result4 = remove_tool_json_content(test4) |
| print(f"\n测试4 - 代码块中的工具调用:") |
| print(f"输入: {repr(test4)}") |
| print(f"输出: {repr(result4)}") |
| print("[PASS] 通过" if "保留文本" in result4 and "tool_calls" not in result4 else "[FAIL] 失败") |
|
|
| if __name__ == "__main__": |
| test_remove_tool_json() |
| print("\n" + "=" * 60) |
| print("所有测试完成!正则表达式问题已成功修复。") |
| print("=" * 60) |