mirror of
https://github.com/hansjone/oclaw.git
synced 2026-10-09 03:13:19 +08:00
- 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>
26 lines
940 B
Python
26 lines
940 B
Python
from __future__ import annotations
|
|
|
|
import os
|
|
|
|
import pytest
|
|
|
|
from svc.integrations import cc_mini_vendor as m
|
|
|
|
|
|
def test_cc_mini_pythonpath_prepends_src_when_available() -> None:
|
|
if not m.cc_mini_available():
|
|
pytest.skip("vendor/cc-mini submodule not initialized")
|
|
env = m.cc_mini_pythonpath_env({"PYTHONPATH": "/existing"})
|
|
head, *rest = env["PYTHONPATH"].split(os.pathsep)
|
|
assert head == str(m.cc_mini_src_dir())
|
|
assert "/existing" in env["PYTHONPATH"]
|
|
|
|
|
|
def test_run_cc_mini_cli_missing_raises() -> None:
|
|
# If someone deletes only engine.py this still triggers missing tree in practice;
|
|
# we only assert the error type when the whole checkout is absent.
|
|
if m.cc_mini_available():
|
|
pytest.skip("cc-mini present")
|
|
with pytest.raises(FileNotFoundError) as ei:
|
|
m.run_cc_mini_cli(["--help"])
|
|
assert "git submodule" in str(ei.value).lower() or "cc-mini" in str(ei.value).lower()
|