import asyncio import json from sympy import symbols, Eq from strategy_manager import StrategyManager async def run_test(): sm = StrategyManager() print("--- TEST 1: General Prompt with Good Math ---") topic_id = "CIRCLE_EQUATION" data_anchor = {"center": [0,0], "radius": 5} llm_resp = {"solution": "x^2 + y^2 = 25"} res = sm._validate(topic_id, llm_resp, data_anchor) print(f"Validation Result: {res}") print("\n--- TEST 2: General Prompt with Bad Math ---") llm_resp_bad = {"solution": "x^2 - (y^2 / 3) = 1"} res2 = sm._validate(topic_id, llm_resp_bad, data_anchor) print(f"Validation Result: {res2}") print("\n--- TEST 3: General Prompt on Unknown Topic ---") res3 = sm._validate("WEIRD_TOPIC", {}, {}) print(f"Validation Result: {res3}") if __name__ == "__main__": asyncio.run(run_test())