Files
skill-seekers-reference/tests/test_adaptors/test_deepseek_adaptor.py
yusyus cd7b322b5e feat: expand platform coverage with 8 new adaptors, 7 new CLI agents, and OpenCode skill tools
Phase 1 - OpenCode Integration:
- Add OpenCodeAdaptor with directory-based packaging and dual-format YAML frontmatter
- Kebab-case name validation matching OpenCode's regex spec

Phase 2 - OpenAI-Compatible LLM Platforms:
- Extract OpenAICompatibleAdaptor base class from MiniMax (shared format/package/upload/enhance)
- Refactor MiniMax to ~20 lines of constants inheriting from base
- Add 6 new LLM adaptors: Kimi, DeepSeek, Qwen, OpenRouter, Together AI, Fireworks AI
- All use OpenAI-compatible API with platform-specific constants

Phase 3 - CLI Agent Expansion:
- Add 7 new install-agent paths: roo, cline, aider, bolt, kilo, continue, kimi-code
- Total agents: 11 -> 18

Phase 4 - Advanced Features:
- OpenCode skill splitter (auto-split large docs into focused sub-skills with router)
- Bi-directional skill format converter (import/export between OpenCode and any platform)
- GitHub Actions template for automated skill updates

Totals: 12 --target platforms, 18 --agent paths, 2915 tests passing

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-21 20:31:51 +03:00

52 lines
1.6 KiB
Python

#!/usr/bin/env python3
"""Tests for DeepSeek AI adaptor"""
import json
import tempfile
import unittest
import zipfile
from pathlib import Path
from skill_seekers.cli.adaptors import get_adaptor, is_platform_available
class TestDeepSeekAdaptor(unittest.TestCase):
def setUp(self):
self.adaptor = get_adaptor("deepseek")
def test_platform_info(self):
self.assertEqual(self.adaptor.PLATFORM, "deepseek")
self.assertEqual(self.adaptor.PLATFORM_NAME, "DeepSeek AI")
self.assertIn("deepseek", self.adaptor.DEFAULT_API_ENDPOINT)
self.assertEqual(self.adaptor.DEFAULT_MODEL, "deepseek-chat")
def test_platform_available(self):
self.assertTrue(is_platform_available("deepseek"))
def test_env_var_name(self):
self.assertEqual(self.adaptor.get_env_var_name(), "DEEPSEEK_API_KEY")
def test_supports_enhancement(self):
self.assertTrue(self.adaptor.supports_enhancement())
def test_package_metadata(self):
with tempfile.TemporaryDirectory() as temp_dir:
skill_dir = Path(temp_dir) / "test-skill"
skill_dir.mkdir()
(skill_dir / "SKILL.md").write_text("Test")
output_dir = Path(temp_dir) / "output"
output_dir.mkdir()
pkg = self.adaptor.package(skill_dir, output_dir)
self.assertIn("deepseek", pkg.name)
with zipfile.ZipFile(pkg) as zf:
meta = json.loads(zf.read("deepseek_metadata.json"))
self.assertEqual(meta["platform"], "deepseek")
self.assertIn("deepseek", meta["api_base"])
if __name__ == "__main__":
unittest.main()