Merge pull request #8371 from owncloud/add-test-for-auto-accept-disabled

[full-ci] [tests-only] Added tests to lists file shared with them when sync is disabled
This commit is contained in:
Prarup Gurung
2024-02-06 15:32:38 +05:45
committed by GitHub
3 changed files with 508 additions and 0 deletions
+1
View File
@@ -316,6 +316,7 @@ default:
- SharingNgContext:
- PublicWebDavContext:
- OcisConfigContext:
- SettingsContext:
extensions:
rdx\behatvars\BehatVariablesExtension: ~
@@ -593,3 +593,509 @@ Feature: an user gets the resources shared to them
}
}
"""
Scenario: user lists the file shared with them when auto-sync is disabled
Given user "Alice" has uploaded file with content "to share" to "textfile.txt"
And user "Brian" has disabled the auto-sync share
And user "Alice" has sent the following share invitation:
| resource | textfile.txt |
| space | Personal |
| sharee | Brian |
| shareType | user |
| permissionsRole | Viewer |
When user "Brian" lists the shares shared with him using the Graph API
Then the HTTP status code should be "200"
And the JSON data of the response should match
"""
{
"type": "object",
"required": [
"value"
],
"properties": {
"value": {
"type": "array",
"items": {
"type": "object",
"required": [
"@UI.Hidden",
"@client.synchronize",
"createdBy",
"eTag",
"file",
"id",
"lastModifiedDateTime",
"name",
"parentReference",
"remoteItem",
"size"
],
"properties": {
"@UI.Hidden": {
"type": "boolean",
"enum": [false]
},
"@client.synchronize": {
"type": "boolean",
"enum": [false]
},
"createdBy": {
"type": "object",
"required": ["user"],
"properties": {
"user": {
"type": "object",
"required": ["displayName", "id"],
"properties": {
"displayName": {
"type": "string",
"enum": ["Alice Hansen"]
},
"id": {
"type": "string",
"pattern": "^%user_id_pattern%$"
}
}
}
}
},
"eTag": {
"type": "string",
"pattern": "%etag_pattern%"
},
"file": {
"type": "object",
"required": ["mimeType"],
"properties": {
"mimeType": {
"type": "string",
"enum": ["text/plain"]
}
}
},
"id": {
"type": "string",
"pattern": "^%share_id_pattern%$"
},
"name": {
"type": "string",
"enum": ["textfile.txt"]
},
"parentReference": {
"type": "object",
"required": ["driveId", "driveType", "id"],
"properties": {
"driveId": {
"type": "string",
"pattern": "^%space_id_pattern%$"
},
"driveType": {
"type": "string",
"enum": ["virtual"]
},
"id": {
"type": "string",
"pattern": "^%file_id_pattern%$"
}
}
},
"remoteItem": {
"type": "object",
"required": [
"createdBy",
"eTag",
"file",
"id",
"lastModifiedDateTime",
"name",
"parentReference",
"permissions",
"size"
],
"properties": {
"createdBy": {
"type": "object",
"required": ["user"],
"properties": {
"user": {
"type": "object",
"required": ["displayName","id"],
"properties": {
"displayName": {
"type": "string",
"enum": ["Alice Hansen"]
},
"id": {
"type": "string",
"pattern": "^%user_id_pattern%$"
}
}
}
}
},
"eTag": {
"type": "string",
"pattern": "%etag_pattern%"
},
"file": {
"type": "object",
"required": ["mimeType"],
"properties": {
"mimeType": {
"type": "string",
"enum": ["text/plain"]
}
}
},
"id": {
"type": "string",
"pattern": "^%file_id_pattern%$"
},
"name": {
"type": "string",
"enum": ["textfile.txt"]
},
"parentReference": {
"type": "object",
"required": ["driveId", "driveType"],
"properties": {
"driveId": {
"type": "string",
"pattern": "^%file_id_pattern%$"
},
"driveType": {
"type": "string",
"enum": ["personal"]
}
}
},
"permissions": {
"type": "array",
"items": [
{
"type": "object",
"required": [
"grantedToV2",
"id",
"invitation",
"roles"
],
"properties": {
"grantedToV2": {
"type": "object",
"required": ["user"],
"properties": {
"user": {
"type": "object",
"required": ["displayName", "id"],
"properties": {
"displayName": {
"type": "string",
"enum": ["Brian Murphy"]
},
"id": {
"type": "string",
"pattern": "^%user_id_pattern%$"
}
}
}
}
}
},
"id": {
"type": "string",
"pattern": "^%permissions_id_pattern%$"
},
"invitation": {
"type": "object",
"required": ["invitedBy"],
"properties": {
"invitedBy": {
"type": "object",
"required": ["user"],
"properties": {
"user": {
"type": "object",
"required": ["displayName", "id"],
"properties": {
"displayName": {
"type": "string",
"enum": ["Alice Hansen"]
},
"id": {
"type": "string",
"pattern": "^%user_id_pattern%$"
}
}
}
}
}
}
},
"roles": {
"type": "array",
"items": [
{
"type": "string",
"pattern": "^%role_id_pattern%$"
}
]
}
}
]
},
"size": {
"type": "number",
"enum": [8]
}
}
},
"size": {
"type": "number",
"enum": [8]
}
}
}
}
}
}
"""
Scenario: user lists the folder shared with them when auto-sync is disabled
Given user "Alice" has created folder "folderToShare"
And user "Brian" has disabled the auto-sync share
And user "Alice" has sent the following share invitation:
| resource | folderToShare |
| space | Personal |
| sharee | Brian |
| shareType | user |
| permissionsRole | Viewer |
When user "Brian" lists the shares shared with him using the Graph API
Then the HTTP status code should be "200"
And the JSON data of the response should match
"""
{
"type": "object",
"required": [
"value"
],
"properties": {
"value": {
"type": "array",
"items": {
"type": "object",
"required": [
"@UI.Hidden",
"@client.synchronize",
"createdBy",
"eTag",
"folder",
"id",
"lastModifiedDateTime",
"name",
"parentReference",
"remoteItem"
],
"properties": {
"@UI.Hidden": {
"type": "boolean",
"enum": [false]
},
"@client.synchronize": {
"type": "boolean",
"enum": [false]
},
"createdBy": {
"type": "object",
"required": ["user"],
"properties": {
"user": {
"type": "object",
"required": ["displayName", "id"],
"properties": {
"displayName": {
"type": "string",
"enum": ["Alice Hansen"]
},
"id": {
"type": "string",
"pattern": "^%user_id_pattern%$"
}
}
}
}
},
"eTag": {
"type": "string",
"pattern": "%etag_pattern%"
},
"id": {
"type": "string",
"pattern": "^%share_id_pattern%$"
},
"name": {
"type": "string",
"enum": ["folderToShare"]
},
"parentReference": {
"type": "object",
"required": ["driveId", "driveType", "id"],
"properties": {
"driveId": {
"type": "string",
"pattern": "^%space_id_pattern%$"
},
"driveType": {
"type": "string",
"enum": ["virtual"]
},
"id": {
"type": "string",
"pattern": "^%file_id_pattern%$"
}
}
},
"remoteItem": {
"type": "object",
"required": [
"createdBy",
"eTag",
"folder",
"id",
"lastModifiedDateTime",
"name",
"parentReference",
"permissions"
],
"properties": {
"createdBy": {
"type": "object",
"required": ["user"],
"properties": {
"user": {
"type": "object",
"required": ["displayName","id"],
"properties": {
"displayName": {
"type": "string",
"enum": ["Alice Hansen"]
},
"id": {
"type": "string",
"pattern": "^%user_id_pattern%$"
}
}
}
}
},
"eTag": {
"type": "string",
"pattern": "%etag_pattern%"
},
"id": {
"type": "string",
"pattern": "^%file_id_pattern%$"
},
"name": {
"type": "string",
"enum": ["folderToShare"]
},
"parentReference": {
"type": "object",
"required": ["driveId", "driveType"],
"properties": {
"driveId": {
"type": "string",
"pattern": "^%file_id_pattern%$"
},
"driveType": {
"type": "string",
"enum": ["personal"]
}
}
},
"permissions": {
"type": "array",
"items": [
{
"type": "object",
"required": [
"grantedToV2",
"id",
"invitation",
"roles"
],
"properties": {
"grantedToV2": {
"type": "object",
"required": ["user"],
"properties": {
"user": {
"type": "object",
"required": ["displayName", "id"],
"properties": {
"displayName": {
"type": "string",
"enum": ["Brian Murphy"]
},
"id": {
"type": "string",
"pattern": "^%user_id_pattern%$"
}
}
}
}
}
},
"id": {
"type": "string",
"pattern": "^%permissions_id_pattern%$"
},
"invitation": {
"type": "object",
"required": ["invitedBy"],
"properties": {
"invitedBy": {
"type": "object",
"required": ["user"],
"properties": {
"user": {
"type": "object",
"required": ["displayName", "id"],
"properties": {
"displayName": {
"type": "string",
"enum": ["Alice Hansen"]
},
"id": {
"type": "string",
"pattern": "^%user_id_pattern%$"
}
}
}
}
}
}
},
"roles": {
"type": "array",
"items": [
{
"type": "string",
"pattern": "^%role_id_pattern%$"
}
]
}
}
]
}
}
}
}
}
}
}
}
"""
@@ -523,6 +523,7 @@ class SettingsContext implements Context {
/**
* @Given user :user has disabled auto-accepting
* @Given user :user has disabled the auto-sync share
*
* @param string $user
*