Document name-first write plan selectors
This commit is contained in:
@@ -21787,6 +21787,27 @@ def test_metadata_write_plan_reports_unresolved_public_form_selector(monkeypatch
|
||||
assert any(problem["code"] == "public_form_target_not_resolved" for problem in result["problems"])
|
||||
|
||||
|
||||
def test_metadata_write_plan_help_describes_name_first_form_and_module_targets() -> None:
|
||||
methods = {
|
||||
row["name"]: row
|
||||
for row in adapter_server.call_method("help.methods", {})["methods"]
|
||||
}
|
||||
|
||||
for method_name in ("metadata.write.plan", "metadata.write.preflight"):
|
||||
method = methods[method_name]
|
||||
target_properties = method["input_schema"]["properties"]["target"]["properties"]
|
||||
assert method["input_schema"]["required"] == ["base_id", "target"]
|
||||
assert {"ref", "extension", "form", "element", "command", "attribute", "module", "qualified_name", "stream_ordinal"} <= set(target_properties)
|
||||
assert method["input_schema"]["properties"]["edits"]["items"]["required"] == ["property", "value"]
|
||||
examples = method["input_schema"]["examples"]
|
||||
assert any((example.get("target") or {}).get("kind") == "form" and (example.get("target") or {}).get("ref") for example in examples)
|
||||
assert any((example.get("target") or {}).get("kind") == "module" and (example.get("target") or {}).get("module") for example in examples)
|
||||
|
||||
description = methods["metadata.write.plan"]["description"]
|
||||
assert "name-first" in description
|
||||
assert "metadata.saved_state.modules.search" in description
|
||||
|
||||
|
||||
def test_metadata_write_preflight_verifies_concrete_saved_state(monkeypatch: pytest.MonkeyPatch) -> None:
|
||||
def fake_diff(payload: dict[str, Any]) -> dict[str, Any]:
|
||||
assert payload["module_ref"] == "ConfigCASSave:object-guid__module-guid.0#stream:4"
|
||||
|
||||
Reference in New Issue
Block a user