mirror of
https://github.com/MODSetter/SurfSense.git
synced 2026-07-08 22:22:17 +02:00
feat(capabilities): register web.discover verb
This commit is contained in:
parent
329bc63b6c
commit
f257e385db
3 changed files with 31 additions and 2 deletions
|
|
@ -1,5 +1,6 @@
|
|||
"""``web.*`` namespace: the generic web scraping verbs."""
|
||||
"""``web.*`` namespace: the generic web scraping + discovery verbs."""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
from app.capabilities.web.scrape import definition # noqa: F401 — registers web.scrape
|
||||
from app.capabilities.web.discover import definition as _discover # noqa: F401
|
||||
from app.capabilities.web.scrape import definition as _scrape # noqa: F401
|
||||
|
|
|
|||
|
|
@ -0,0 +1,18 @@
|
|||
"""``web.discover`` capability registration (free — see 04-capabilities open item)."""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
from app.capabilities.store import register_capability
|
||||
from app.capabilities.types import Capability
|
||||
from app.capabilities.web.discover.executor import build_discover_executor
|
||||
from app.capabilities.web.discover.schemas import DiscoverInput, DiscoverOutput
|
||||
|
||||
WEB_DISCOVER = Capability(
|
||||
name="web.discover",
|
||||
input_schema=DiscoverInput,
|
||||
output_schema=DiscoverOutput,
|
||||
executor=build_discover_executor(),
|
||||
billing_unit=None,
|
||||
)
|
||||
|
||||
register_capability(WEB_DISCOVER)
|
||||
|
|
@ -9,6 +9,7 @@ from app.capabilities import (
|
|||
)
|
||||
from app.capabilities.store import get_capability
|
||||
from app.capabilities.types import BillingUnit
|
||||
from app.capabilities.web.discover.schemas import DiscoverInput, DiscoverOutput
|
||||
from app.capabilities.web.scrape.schemas import ScrapeInput, ScrapeOutput
|
||||
|
||||
pytestmark = pytest.mark.unit
|
||||
|
|
@ -21,3 +22,12 @@ def test_web_scrape_is_registered_with_its_schemas_and_billing_unit():
|
|||
assert cap.input_schema is ScrapeInput
|
||||
assert cap.output_schema is ScrapeOutput
|
||||
assert cap.billing_unit is BillingUnit.WEB_CRAWL
|
||||
|
||||
|
||||
def test_web_discover_is_registered_and_free():
|
||||
cap = get_capability("web.discover")
|
||||
|
||||
assert cap.name == "web.discover"
|
||||
assert cap.input_schema is DiscoverInput
|
||||
assert cap.output_schema is DiscoverOutput
|
||||
assert cap.billing_unit is None
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue