mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-05-13 07:26:45 +00:00
38 lines
957 B
Python
38 lines
957 B
Python
import tempfile
|
|
import unittest
|
|
from pathlib import Path
|
|
|
|
from anyio import Path as AsyncPath
|
|
|
|
from app.agent.middleware.skills import _alist_skills
|
|
|
|
|
|
class SkillsMiddlewareAsyncTest(unittest.IsolatedAsyncioTestCase):
|
|
async def test_alist_skills_sorts_skill_directories_by_name(self):
|
|
with tempfile.TemporaryDirectory() as tempdir:
|
|
root = Path(tempdir)
|
|
|
|
for skill_id in ("z-skill", "a-skill", "m-skill"):
|
|
skill_dir = root / skill_id
|
|
skill_dir.mkdir()
|
|
(skill_dir / "SKILL.md").write_text(
|
|
f"""---
|
|
name: {skill_id}
|
|
description: test
|
|
---
|
|
# {skill_id}
|
|
""",
|
|
encoding="utf-8",
|
|
)
|
|
|
|
skills = await _alist_skills(AsyncPath(str(root)))
|
|
|
|
self.assertEqual(
|
|
["a-skill", "m-skill", "z-skill"],
|
|
[skill["id"] for skill in skills],
|
|
)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|