oclaw/tests/test_clawhub_client.py
oliver 420abac9f1 refactor: root-package imports (svc/runtime/interfaces) and fix PYTHONPATH
- Rename platform/ to svc/ to avoid shadowing stdlib platform.
- Replace from oclaw.* with from svc/runtime/interfaces; update -m CLI paths.
- tests/conftest: prepend repo root to sys.path (no parent-folder package name).
- CI: paths and offline_eval script under repo root.
- Ops scripts: PYTHONPATH must be repo root for python -m runtime.* (fixes gateway/WhatsApp sidecar startup).
- Fix default oclaw.json path in tabular/file attachment limits; stabilize attachment test config.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-13 14:51:17 +08:00

17 lines
671 B
Python

from __future__ import annotations
from runtime.tools.skills import clawhub_client
def test_get_skill_detail_handles_latest_version_object(monkeypatch) -> None:
def _fake_get_json(url, *, params=None, headers=None): # noqa: ANN001,ARG001
return {
"slug": "self-improving-agent",
"latestVersion": {"version": "3.0.16"},
"versions": [{"version": "3.0.16"}],
}
monkeypatch.setattr(clawhub_client, "_safe_get_json", _fake_get_json)
out = clawhub_client.get_skill_detail("self-improving-agent")
assert out.get("latestVersion") == "3.0.16"
assert "version=3.0.16" in str(out.get("archiveUrl") or "")