Spaces:
Paused
Paused
| import sys | |
| from pathlib import Path | |
| # ๋ฐฑ์๋ ๊ฒฝ๋ก ์ค์ | |
| SCRIPTS_DIR = Path(__file__).resolve().parent | |
| BACKEND_DIR = SCRIPTS_DIR.parent | |
| sys.path.append(str(BACKEND_DIR)) | |
| from app.utils.law_api import law_api | |
| def test_api(): | |
| print("=== [๊ตญ๊ฐ๋ฒ๋ น์ ๋ณด Open API ๊ธฐ๋ฅ ๊ฒ์ฆ ํ ์คํธ] ===") | |
| # 1. ํ์๊ด๊ณ ๋ฒ ๊ฒ์ | |
| print("\n[Step 1] 'ํ์๊ด๊ณ ์ ๊ณต์ ํ' MST ๊ฒ์ ์ค...") | |
| mst = law_api.search_law_mst("ํ์๊ด๊ณ ์ ๊ณต์ ํ") | |
| if not mst: | |
| print("[Fail] 'ํ์๊ด๊ณ ์ ๊ณต์ ํ' ์ผ๋ จ๋ฒํธ๋ฅผ ๊ฒ์ํ์ง ๋ชปํ์ต๋๋ค. API ํค๋ ๋คํธ์ํฌ๋ฅผ ์ ๊ฒํ์ธ์.") | |
| return False | |
| print(f"[Success] 'ํ์๊ด๊ณ ์ ๊ณต์ ํ' MST ํ๋: {mst}") | |
| # 2. ํ์๊ด๊ณ ๋ฒ ์์ธ ์กฐ๋ฌธ ์กฐํ | |
| print("\n[Step 2] 'ํ์๊ด๊ณ ์ ๊ณต์ ํ' ์กฐ๋ฌธ ๋ฐ์ดํฐ ์กฐํ ์ค...") | |
| detail_text = law_api.get_law_detail_text(mst, limit_clause_count=5) | |
| if not detail_text or "ํ์ฑ" in detail_text: | |
| print("[Fail] ์กฐ๋ฌธ ๋ฐ์ดํฐ๋ฅผ ๋ถ๋ฌ์ค์ง ๋ชปํ์ต๋๋ค.") | |
| return False | |
| print("[Success] ์กฐ๋ฌธ ๋ฐ์ดํฐ ์ผ๋ถ ์ถ๋ ฅ:") | |
| print("-" * 50) | |
| # ํ๊ธ ์ธ์ฝ๋ฉ ๊นจ์ง ๋ฐฉ์ง ์ํด ์ด๋ชจ์ง ๋ฐฐ์ ํ์ฌ ์ถ๋ ฅ | |
| print(detail_text[:600] + "\n...") | |
| print("-" * 50) | |
| # 3. ์ํํ์๊ด๊ณ ๋ฒ ์ถ๊ฐ ํ ์คํธ | |
| print("\n[Step 3] '์ํ ๋ฑ์ ํ์' ์ถ๊ฐ ๊ฒ์ ์ค...") | |
| mst_food = law_api.search_law_mst("์ํ ๋ฑ์ ํ์") | |
| if mst_food: | |
| print(f"[Success] '์ํ ๋ฑ์ ํ์' MST ํ๋: {mst_food}") | |
| food_text = law_api.get_law_detail_text(mst_food, limit_clause_count=3) | |
| print(food_text[:300] + "\n...") | |
| return True | |
| if __name__ == "__main__": | |
| success = test_api() | |
| if success: | |
| print("\n[Result] All Open API tests passed successfully!") | |
| sys.exit(0) | |
| else: | |
| print("\n[Result] Open API tests failed.") | |
| sys.exit(1) | |