feat(server): add workbench API, DSH planner worker and RAG pipeline
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
from sqlmodel import Session, SQLModel, create_engine, select
|
||||
|
||||
from app.agents.default_composer import resolve_composer_agent
|
||||
from app.agents.snapshot import freeze_stage_snapshot
|
||||
from app.models import Agent
|
||||
|
||||
|
||||
def test_composer_is_available_without_a_resource_or_canvas():
|
||||
engine = create_engine("sqlite://")
|
||||
SQLModel.metadata.create_all(engine)
|
||||
with Session(engine) as session:
|
||||
composer = resolve_composer_agent(session)
|
||||
assert composer.id == 0
|
||||
assert composer.role == "composer"
|
||||
assert composer.rules
|
||||
assert session.exec(select(Agent)).all() == []
|
||||
assert freeze_stage_snapshot(session)["composer"]["role"] == "composer"
|
||||
|
||||
|
||||
def test_composer_does_not_use_another_users_private_agent():
|
||||
engine = create_engine("sqlite://")
|
||||
SQLModel.metadata.create_all(engine)
|
||||
with Session(engine) as session:
|
||||
session.add(Agent(name="私人组合", role="composer", owner_user_id=12,
|
||||
visibility="private", rules="private rules"))
|
||||
session.commit()
|
||||
assert resolve_composer_agent(session).id == 0
|
||||
|
||||
|
||||
def test_existing_system_configuration_is_preserved():
|
||||
engine = create_engine("sqlite://")
|
||||
SQLModel.metadata.create_all(engine)
|
||||
with Session(engine) as session:
|
||||
configured = Agent(name="组合 Agent", role="composer", builtin=True,
|
||||
rules="configured rules")
|
||||
session.add(configured)
|
||||
session.commit()
|
||||
assert resolve_composer_agent(session).id == configured.id
|
||||
configured.status = "disabled"
|
||||
session.add(configured)
|
||||
session.commit()
|
||||
assert resolve_composer_agent(session).id == 0
|
||||
Reference in New Issue
Block a user