diff --git a/tests/acceptance/features/apiOcm/ocmEndpoint.feature b/tests/acceptance/features/apiOcm/ocmEndpoint.feature new file mode 100644 index 000000000..bf52762a7 --- /dev/null +++ b/tests/acceptance/features/apiOcm/ocmEndpoint.feature @@ -0,0 +1,84 @@ +@ocm +Feature: OCM Well-Known Endpoint + As a user + I want to verify the response of the .well-known/ocm endpoint + So that I can ensure the configuration works correctly + + + Scenario: check the ocm well-known endpoint response + Given using server "LOCAL" + When a user requests "/.well-known/ocm" with "GET" and no authentication + Then the HTTP status code should be "200" + And the JSON data of the response should match + """ + { + "type": "object", + "required": [ + "enabled", + "apiVersion", + "endPoint", + "provider", + "resourceTypes", + "capabilities" + ], + "properties": { + "enabled": { + "const": true + }, + "apiVersion": { + "const": "1.1.0" + }, + "endPoint": { + "pattern": "^%base_url%/ocm" + }, + "provider": { + "const": "oCIS" + }, + "resourceTypes": { + "type": "array", + "minItems": 1, + "maxItems": 1, + "items": { + "type": "object", + "required": [ + "name", + "shareTypes", + "protocols" + ], + "properties": { + "name": { + "const": "file" + }, + "sharesTypes": { + "type": "array", + "minItems": 1, + "maxItems": 1, + "items": { + "const": "user" + } + }, + "protocols": { + "type": "object", + "required": [ + "webdav" + ], + "properties": { + "webdav": { + "const": "/dav/ocm" + } + } + } + } + } + }, + "capabilities": { + "type": "array", + "minItems": 1, + "maxItems": 1, + "items": { + "const": "/invite-accepted" + } + } + } + } + """