generated from coulomb/repo-seed
CMIS Browser Binding fixes
This commit is contained in:
@@ -215,6 +215,24 @@ def test_runtime_cmis_compat_profile_supports_workspace_folder_lifecycle(cmis_ru
|
||||
folder_children = runtime.cmis_children("compat-tck", context, folder_id=folder_object_id)
|
||||
document_by_path = runtime.cmis_object_by_path("compat-tck", "/TCK Workspace/Workspace Document", context)
|
||||
document_parents = runtime.cmis_object_parents("compat-tck", document["object_id"], context)
|
||||
browser_document_parents = runtime.cmis_browser_parents("compat-tck", document["object_id"], context)
|
||||
filtered_document = runtime.cmis_browser_object(
|
||||
"compat-tck",
|
||||
document["object_id"],
|
||||
context,
|
||||
property_filter="cmis:objectId,cmis:name",
|
||||
include_allowable_actions=False,
|
||||
include_acl=False,
|
||||
)
|
||||
filtered_children = runtime.cmis_browser_children(
|
||||
"compat-tck",
|
||||
context,
|
||||
object_id=folder_object_id,
|
||||
property_filter="cmis:objectId,cmis:name",
|
||||
include_allowable_actions=False,
|
||||
include_acl=False,
|
||||
include_path_segment=False,
|
||||
)
|
||||
|
||||
assert folder["path"] == "/TCK Workspace"
|
||||
assert folder["properties"]["kontextual:workspaceFolder"] is True
|
||||
@@ -222,11 +240,17 @@ def test_runtime_cmis_compat_profile_supports_workspace_folder_lifecycle(cmis_ru
|
||||
assert fetched["properties"]["cmis:path"] == "/TCK Workspace"
|
||||
assert parents["parents"][0]["object_id"] == "cmis-root"
|
||||
assert document["path"] == "/TCK Workspace/Workspace Document"
|
||||
assert document["properties"]["cmis:path"] == "/TCK Workspace/Workspace Document"
|
||||
assert "cmis:path" not in document["properties"]
|
||||
assert document_by_path["object_id"] == document["object_id"]
|
||||
assert document_parents["count"] == 1
|
||||
assert document_parents["parents"][0]["properties"]["cmis:path"] == "/TCK Workspace"
|
||||
assert browser_document_parents[0]["relativePathSegment"] == "Workspace Document"
|
||||
assert document["object_id"] in {item["object_id"] for item in folder_children["objects"]}
|
||||
assert set(filtered_document["properties"]) == {"cmis:objectId", "cmis:name"}
|
||||
assert "allowableActions" not in filtered_document
|
||||
assert "pathSegment" not in filtered_children["objects"][0]
|
||||
assert set(filtered_children["objects"][0]["object"]["properties"]) == {"cmis:objectId", "cmis:name"}
|
||||
assert "allowableActions" not in filtered_children["objects"][0]["object"]
|
||||
|
||||
with pytest.raises(Exception) as exc_info:
|
||||
runtime.cmis_delete_object("compat-tck", folder_object_id, {}, context)
|
||||
@@ -242,6 +266,31 @@ def test_runtime_cmis_compat_profile_supports_workspace_folder_lifecycle(cmis_ru
|
||||
assert "CMIS folder not found" in str(exc_info.value)
|
||||
|
||||
|
||||
def test_runtime_cmis_workspace_folder_rename_keeps_object_id_stable(cmis_runtime) -> None:
|
||||
runtime, context = cmis_runtime
|
||||
|
||||
folder = runtime.cmis_create_folder(
|
||||
"compat-tck",
|
||||
{"name": "Rename Source", "properties": {"cmis:objectTypeId": "cmis:folder"}},
|
||||
context,
|
||||
)
|
||||
renamed = runtime.cmis_update_properties(
|
||||
"compat-tck",
|
||||
folder["object_id"],
|
||||
{"properties": {"cmis:name": "Rename Target"}},
|
||||
context,
|
||||
)
|
||||
fetched_by_old_id = runtime.cmis_object("compat-tck", folder["object_id"], context)
|
||||
fetched_by_new_path = runtime.cmis_object_by_path("compat-tck", "/Rename Target", context)
|
||||
deleted = runtime.cmis_delete_object("compat-tck", folder["object_id"], {}, context)
|
||||
|
||||
assert renamed["object_id"] == folder["object_id"]
|
||||
assert renamed["path"] == "/Rename Target"
|
||||
assert fetched_by_old_id["properties"]["cmis:name"] == "Rename Target"
|
||||
assert fetched_by_new_path["object_id"] == folder["object_id"]
|
||||
assert deleted["deleted"] is True
|
||||
|
||||
|
||||
def test_runtime_cmis_rejects_unsupported_standard_property_updates(cmis_runtime) -> None:
|
||||
runtime, context = cmis_runtime
|
||||
|
||||
@@ -249,7 +298,7 @@ def test_runtime_cmis_rejects_unsupported_standard_property_updates(cmis_runtime
|
||||
runtime.cmis_update_properties(
|
||||
"governed-authoring",
|
||||
"cmis:asset:asset-runtime-source",
|
||||
{"properties": {"cmis:name": "Renamed"}},
|
||||
{"properties": {"cmis:objectTypeId": "cmis:folder"}},
|
||||
context,
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user