generated from coulomb/repo-seed
51 lines
1.5 KiB
Python
51 lines
1.5 KiB
Python
from markitect_tool.extension import builtin_extension_registry
|
|
|
|
|
|
def test_builtin_extension_registry_lists_query_processors_and_backend():
|
|
registry = builtin_extension_registry()
|
|
|
|
ids = [descriptor.id for descriptor in registry.list()]
|
|
|
|
assert "query.selector" not in ids
|
|
assert "selector" in ids
|
|
assert "jsonpath" in ids
|
|
assert "processor.identity" in ids
|
|
assert "processor.uppercase" in ids
|
|
assert "processor.include" in ids
|
|
assert "backend.local-sqlite" in ids
|
|
|
|
|
|
def test_builtin_processor_descriptors_capture_safety_and_provenance():
|
|
registry = builtin_extension_registry()
|
|
|
|
include = registry.get("processor.include")
|
|
uppercase = registry.get("processor.uppercase")
|
|
|
|
assert include.kind == "processor"
|
|
assert include.safety["reads_files"] is True
|
|
assert include.provenance_prefix == "processor.include"
|
|
assert uppercase.safety == {}
|
|
assert uppercase.provenance_prefix == "processor.uppercase"
|
|
|
|
|
|
def test_builtin_local_sqlite_descriptor_exposes_backend_capabilities():
|
|
registry = builtin_extension_registry()
|
|
|
|
descriptor = registry.get("backend.local-sqlite")
|
|
|
|
assert descriptor.kind == "backend"
|
|
assert {capability.id for capability in descriptor.capabilities} >= {
|
|
"snapshots",
|
|
"ast",
|
|
"json",
|
|
"fts",
|
|
"sql",
|
|
"provenance",
|
|
}
|
|
assert descriptor.cli["commands"] == [
|
|
"mkt cache init",
|
|
"mkt cache index",
|
|
"mkt cache query",
|
|
"mkt search",
|
|
]
|