mirror of
https://github.com/opencloud-eu/opencloud.git
synced 2025-12-31 01:10:20 -06:00
Add tests removed by core PR-40275
update core commit id update expected to fail file
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
# The test runner source for API tests
|
||||
CORE_COMMITID=dc5c1f5ce58b63ba9cf799ad81fe5cc50421f6da
|
||||
CORE_COMMITID=76048f490ac50af03594d181c5baf49f87c18b6e
|
||||
CORE_BRANCH=master
|
||||
|
||||
# The test runner source for UI tests
|
||||
|
||||
@@ -8,10 +8,10 @@ Basic file management like up and download, move, copy, properties, trash, versi
|
||||
|
||||
#### [Getting information about a folder overwritten by a file gives 500 error instead of 404](https://github.com/owncloud/ocis/issues/1239)
|
||||
|
||||
- [apiWebdavProperties1/copyFile.feature:286](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L286)
|
||||
- [apiWebdavProperties1/copyFile.feature:287](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L287)
|
||||
- [apiWebdavProperties1/copyFile.feature:309](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L309)
|
||||
- [apiWebdavProperties1/copyFile.feature:310](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L310)
|
||||
- [apiWebdavProperties1/copyFile.feature:276](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L276)
|
||||
- [apiWebdavProperties1/copyFile.feature:277](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L277)
|
||||
- [apiWebdavProperties1/copyFile.feature:294](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L294)
|
||||
- [apiWebdavProperties1/copyFile.feature:295](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L295)
|
||||
|
||||
#### [Custom dav properties with namespaces are rendered incorrectly](https://github.com/owncloud/ocis/issues/2140)
|
||||
|
||||
@@ -55,8 +55,8 @@ Synchronization features like etag propagation, setting mtime and locking files
|
||||
|
||||
#### [Uploading an old method chunked file with checksum should fail using new DAV path](https://github.com/owncloud/ocis/issues/2323)
|
||||
|
||||
- [apiMain/checksums.feature:381](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiMain/checksums.feature#L381)
|
||||
- [apiMain/checksums.feature:386](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiMain/checksums.feature#L386)
|
||||
- [apiMain/checksums.feature:371](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiMain/checksums.feature#L371)
|
||||
- [apiMain/checksums.feature:376](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiMain/checksums.feature#L376)
|
||||
|
||||
#### [Webdav LOCK operations](https://github.com/owncloud/ocis/issues/1284)
|
||||
|
||||
@@ -581,9 +581,8 @@ cannot share a folder with create permission
|
||||
|
||||
#### [changing user quota gives ocs status 103 / Cannot set quota](https://github.com/owncloud/product/issues/247)
|
||||
|
||||
- [apiShareOperationsToShares2/uploadToShare.feature:245](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/uploadToShare.feature#L245)
|
||||
- [apiShareOperationsToShares2/uploadToShare.feature:246](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/uploadToShare.feature#L246)
|
||||
- [apiShareOperationsToShares2/uploadToShare.feature:251](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/uploadToShare.feature#L251)
|
||||
- [apiShareOperationsToShares2/uploadToShare.feature:210](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/uploadToShare.feature#L210)
|
||||
- [apiShareOperationsToShares2/uploadToShare.feature:211](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/uploadToShare.feature#L211)
|
||||
|
||||
#### [not possible to move file into a received folder](https://github.com/owncloud/ocis/issues/764)
|
||||
|
||||
@@ -943,42 +942,6 @@ And other missing implementation of favorites
|
||||
- [apiFavorites/favoritesSharingToShares.feature:67](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiFavorites/favoritesSharingToShares.feature#L67)
|
||||
- [apiFavorites/favoritesSharingToShares.feature:83](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiFavorites/favoritesSharingToShares.feature#L83)
|
||||
- [apiFavorites/favoritesSharingToShares.feature:108](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiFavorites/favoritesSharingToShares.feature#L108)
|
||||
- [apiMain/checksums.feature:211](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiMain/checksums.feature#L211)
|
||||
- [apiShareOperationsToShares2/getWebDAVSharePermissions.feature:51](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/getWebDAVSharePermissions.feature#L51)
|
||||
- [apiShareOperationsToShares2/getWebDAVSharePermissions.feature:78](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/getWebDAVSharePermissions.feature#L78)
|
||||
- [apiShareOperationsToShares2/getWebDAVSharePermissions.feature:98](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/getWebDAVSharePermissions.feature#L98)
|
||||
- [apiShareOperationsToShares2/getWebDAVSharePermissions.feature:125](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/getWebDAVSharePermissions.feature#L125)
|
||||
- [apiShareOperationsToShares2/getWebDAVSharePermissions.feature:145](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/getWebDAVSharePermissions.feature#L145)
|
||||
- [apiShareOperationsToShares2/getWebDAVSharePermissions.feature:172](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/getWebDAVSharePermissions.feature#L172)
|
||||
- [apiShareOperationsToShares2/getWebDAVSharePermissions.feature:212](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/getWebDAVSharePermissions.feature#L212)
|
||||
- [apiShareOperationsToShares2/getWebDAVSharePermissions.feature:238](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/getWebDAVSharePermissions.feature#L238)
|
||||
- [apiShareOperationsToShares2/getWebDAVSharePermissions.feature:258](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/getWebDAVSharePermissions.feature#L258)
|
||||
- [apiShareOperationsToShares2/getWebDAVSharePermissions.feature:285](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/getWebDAVSharePermissions.feature#L285)
|
||||
- [apiShareOperationsToShares2/getWebDAVSharePermissions.feature:305](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/getWebDAVSharePermissions.feature#L305)
|
||||
- [apiShareOperationsToShares2/getWebDAVSharePermissions.feature:332](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/getWebDAVSharePermissions.feature#L332)
|
||||
- [apiShareOperationsToShares2/getWebDAVSharePermissions.feature:352](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/getWebDAVSharePermissions.feature#L352)
|
||||
- [apiShareOperationsToShares2/getWebDAVSharePermissions.feature:379](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/getWebDAVSharePermissions.feature#L379)
|
||||
- [apiShareOperationsToShares2/getWebDAVSharePermissions.feature:399](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/getWebDAVSharePermissions.feature#L399)
|
||||
- [apiShareOperationsToShares2/getWebDAVSharePermissions.feature:426](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/getWebDAVSharePermissions.feature#L426)
|
||||
- [apiShareOperationsToShares2/uploadToShare.feature:47](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/uploadToShare.feature#L47)
|
||||
- [apiShareOperationsToShares2/uploadToShare.feature:78](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/uploadToShare.feature#L78)
|
||||
- [apiShareOperationsToShares2/uploadToShare.feature:111](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/uploadToShare.feature#L111)
|
||||
- [apiShareOperationsToShares2/uploadToShare.feature:140](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/uploadToShare.feature#L140)
|
||||
- [apiShareOperationsToShares2/uploadToShare.feature:171](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/uploadToShare.feature#L171)
|
||||
- [apiShareOperationsToShares2/uploadToShare.feature:346](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/uploadToShare.feature#L346)
|
||||
- [apiShareOperationsToShares2/uploadToShare.feature:347](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares2/uploadToShare.feature#L347)
|
||||
- [apiWebdavProperties1/copyFile.feature:89](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L89)
|
||||
- [apiWebdavProperties1/copyFile.feature:116](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L116)
|
||||
- [apiWebdavProperties1/copyFile.feature:292](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L292)
|
||||
- [apiWebdavProperties1/copyFile.feature:315](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L315)
|
||||
- [apiWebdavProperties1/copyFile.feature:343](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L343)
|
||||
- [apiWebdavProperties1/copyFile.feature:373](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L373)
|
||||
- [apiWebdavProperties1/copyFile.feature:402](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L402)
|
||||
- [apiWebdavProperties1/copyFile.feature:431](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L431)
|
||||
- [apiWebdavProperties1/copyFile.feature:515](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L515)
|
||||
- [apiWebdavProperties1/copyFile.feature:548](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L548)
|
||||
- [apiWebdavProperties1/copyFile.feature:580](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L580)
|
||||
- [apiWebdavProperties1/copyFile.feature:612](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L612)
|
||||
- [apiWebdavUploadTUS/uploadToShare.feature:31](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavUploadTUS/uploadToShare.feature#L31)
|
||||
- [apiWebdavUploadTUS/uploadToShare.feature:50](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavUploadTUS/uploadToShare.feature#L50)
|
||||
- [apiWebdavUploadTUS/uploadToShare.feature:72](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavUploadTUS/uploadToShare.feature#L72)
|
||||
@@ -1187,12 +1150,12 @@ And other missing implementation of favorites
|
||||
|
||||
#### [copying the file inside Shares folder returns 404](https://github.com/owncloud/ocis/issues/3874)
|
||||
|
||||
- [apiWebdavProperties1/copyFile.feature:452](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L452)
|
||||
- [apiWebdavProperties1/copyFile.feature:453](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L453)
|
||||
- [apiWebdavProperties1/copyFile.feature:458](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L458)
|
||||
- [apiWebdavProperties1/copyFile.feature:478](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L478)
|
||||
- [apiWebdavProperties1/copyFile.feature:479](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L479)
|
||||
- [apiWebdavProperties1/copyFile.feature:484](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L484)
|
||||
- [apiWebdavProperties1/copyFile.feature:412](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L412)
|
||||
- [apiWebdavProperties1/copyFile.feature:413](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L413)
|
||||
- [apiWebdavProperties1/copyFile.feature:418](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L418)
|
||||
- [apiWebdavProperties1/copyFile.feature:438](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L438)
|
||||
- [apiWebdavProperties1/copyFile.feature:439](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L439)
|
||||
- [apiWebdavProperties1/copyFile.feature:444](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L444)
|
||||
|
||||
### Won't fix
|
||||
|
||||
@@ -1215,9 +1178,9 @@ Not everything needs to be implemented for ocis. While the oc10 testsuite covers
|
||||
|
||||
#### [Blacklist files extensions](https://github.com/owncloud/ocis/issues/2177)
|
||||
|
||||
- [apiWebdavProperties1/copyFile.feature:132](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L132)
|
||||
- [apiWebdavProperties1/copyFile.feature:133](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L133)
|
||||
- [apiWebdavProperties1/copyFile.feature:138](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L138)
|
||||
- [apiWebdavProperties1/copyFile.feature:122](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L122)
|
||||
- [apiWebdavProperties1/copyFile.feature:123](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L123)
|
||||
- [apiWebdavProperties1/copyFile.feature:128](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/copyFile.feature#L128)
|
||||
- [apiWebdavProperties1/createFolder.feature:95](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/createFolder.feature#L95)
|
||||
- [apiWebdavProperties1/createFolder.feature:96](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/createFolder.feature#L96)
|
||||
- [apiWebdavProperties1/createFolder.feature:101](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavProperties1/createFolder.feature#L101)
|
||||
@@ -1375,10 +1338,6 @@ Not everything needs to be implemented for ocis. While the oc10 testsuite covers
|
||||
- [apiWebdavOperations/listFiles.feature:256](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavOperations/listFiles.feature#L256)
|
||||
- [apiWebdavOperations/listFiles.feature:293](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavOperations/listFiles.feature#L293)
|
||||
|
||||
#### [Trying to modify a shared file using spaces end-point returns 409 HTTP status code](https://github.com/owncloud/ocis/issues/3241)
|
||||
|
||||
- [apiMain/checksums.feature:233](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiMain/checksums.feature#L233)
|
||||
|
||||
### [graph/users: enable/disable users](https://github.com/owncloud/ocis/issues/3064)
|
||||
|
||||
- [apiWebdavOperations/refuseAccess.feature:35](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavOperations/refuseAccess.feature#L35)
|
||||
|
||||
227
tests/acceptance/features/apiSpaces/shareOperations.feature
Normal file
227
tests/acceptance/features/apiSpaces/shareOperations.feature
Normal file
@@ -0,0 +1,227 @@
|
||||
@api @skipOnOcV10
|
||||
Feature: sharing
|
||||
|
||||
Background:
|
||||
Given using OCS API version "1"
|
||||
And these users have been created with default attributes and without skeleton files:
|
||||
| username |
|
||||
| Alice |
|
||||
| Brian |
|
||||
And using spaces DAV path
|
||||
|
||||
|
||||
Scenario: Correct webdav share-permissions for received file with edit and reshare permissions
|
||||
Given user "Alice" has uploaded file with content "foo" to "/tmp.txt"
|
||||
And user "Alice" has shared file "/tmp.txt" with user "Brian"
|
||||
And user "Brian" has accepted share "/tmp.txt" offered by user "Alice"
|
||||
When user "Brian" gets the following properties of file "/tmp.txt" inside space "Shares Jail" using the WebDAV API
|
||||
| propertyName |
|
||||
| ocs:share-permissions |
|
||||
Then the HTTP status code should be "207"
|
||||
And the single response should contain a property "ocs:share-permissions" with value "19"
|
||||
|
||||
|
||||
Scenario: Correct webdav share-permissions for received group shared file with edit and reshare permissions
|
||||
Given group "grp1" has been created
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Alice" has uploaded file with content "foo" to "/tmp.txt"
|
||||
And user "Alice" has created a share with settings
|
||||
| path | /tmp.txt |
|
||||
| shareType | group |
|
||||
| permissions | share,update,read |
|
||||
| shareWith | grp1 |
|
||||
And user "Brian" has accepted share "/tmp.txt" offered by user "Alice"
|
||||
When user "Brian" gets the following properties of file "/tmp.txt" inside space "Shares Jail" using the WebDAV API
|
||||
| propertyName |
|
||||
| ocs:share-permissions |
|
||||
Then the HTTP status code should be "207"
|
||||
And the single response should contain a property "ocs:share-permissions" with value "19"
|
||||
|
||||
|
||||
Scenario: Correct webdav share-permissions for received file with edit permissions but no reshare permissions
|
||||
Given user "Alice" has uploaded file with content "foo" to "/tmp.txt"
|
||||
And user "Alice" has shared file "tmp.txt" with user "Brian"
|
||||
And user "Brian" has accepted share "/tmp.txt" offered by user "Alice"
|
||||
When user "Alice" updates the last share using the sharing API with
|
||||
| permissions | update,read |
|
||||
Then the HTTP status code should be "200"
|
||||
And as user "Brian" file "/tmp.txt" inside space "Shares Jail" should contain a property "ocs:share-permissions" with value "3"
|
||||
|
||||
|
||||
Scenario: Correct webdav share-permissions for received group shared file with edit permissions but no reshare permissions
|
||||
Given group "grp1" has been created
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Alice" has uploaded file with content "foo" to "/tmp.txt"
|
||||
And user "Alice" has created a share with settings
|
||||
| path | /tmp.txt |
|
||||
| shareType | group |
|
||||
| permissions | update,read |
|
||||
| shareWith | grp1 |
|
||||
And user "Brian" has accepted share "/tmp.txt" offered by user "Alice"
|
||||
When user "Brian" gets the following properties of file "/tmp.txt" inside space "Shares Jail" using the WebDAV API
|
||||
| propertyName |
|
||||
| ocs:share-permissions |
|
||||
Then the HTTP status code should be "207"
|
||||
And the single response should contain a property "ocs:share-permissions" with value "3"
|
||||
|
||||
|
||||
Scenario: Correct webdav share-permissions for received file with reshare permissions but no edit permissions
|
||||
Given user "Alice" has uploaded file with content "foo" to "/tmp.txt"
|
||||
And user "Alice" has shared file "tmp.txt" with user "Brian"
|
||||
And user "Brian" has accepted share "/tmp.txt" offered by user "Alice"
|
||||
When user "Alice" updates the last share using the sharing API with
|
||||
| permissions | share,read |
|
||||
Then the HTTP status code should be "200"
|
||||
And as user "Brian" file "/tmp.txt" inside space "Shares Jail" should contain a property "ocs:share-permissions" with value "17"
|
||||
|
||||
|
||||
Scenario: Correct webdav share-permissions for received group shared file with reshare permissions but no edit permissions
|
||||
Given group "grp1" has been created
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Alice" has uploaded file with content "foo" to "/tmp.txt"
|
||||
And user "Alice" has created a share with settings
|
||||
| path | /tmp.txt |
|
||||
| shareType | group |
|
||||
| permissions | share,read |
|
||||
| shareWith | grp1 |
|
||||
And user "Brian" has accepted share "/tmp.txt" offered by user "Alice"
|
||||
When user "Brian" gets the following properties of file "/tmp.txt" inside space "Shares Jail" using the WebDAV API
|
||||
| propertyName |
|
||||
| ocs:share-permissions |
|
||||
Then the HTTP status code should be "207"
|
||||
And the single response should contain a property "ocs:share-permissions" with value "17"
|
||||
|
||||
|
||||
Scenario: Correct webdav share-permissions for received folder with all permissions
|
||||
Given user "Alice" has created folder "/tmp"
|
||||
And user "Alice" has shared file "/tmp" with user "Brian"
|
||||
And user "Brian" has accepted share "/tmp" offered by user "Alice"
|
||||
When user "Brian" gets the following properties of folder "/tmp" inside space "Shares Jail" using the WebDAV API
|
||||
| propertyName |
|
||||
| ocs:share-permissions |
|
||||
Then the HTTP status code should be "207"
|
||||
And the single response should contain a property "ocs:share-permissions" with value "31"
|
||||
|
||||
|
||||
Scenario: Correct webdav share-permissions for received group shared folder with all permissions
|
||||
Given group "grp1" has been created
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Alice" has created folder "/tmp"
|
||||
And user "Alice" has created a share with settings
|
||||
| path | tmp |
|
||||
| shareType | group |
|
||||
| shareWith | grp1 |
|
||||
And user "Brian" has accepted share "/tmp" offered by user "Alice"
|
||||
When user "Brian" gets the following properties of folder "/tmp" inside space "Shares Jail" using the WebDAV API
|
||||
| propertyName |
|
||||
| ocs:share-permissions |
|
||||
Then the HTTP status code should be "207"
|
||||
And the single response should contain a property "ocs:share-permissions" with value "31"
|
||||
|
||||
|
||||
Scenario: Correct webdav share-permissions for received folder with all permissions but edit
|
||||
Given user "Alice" has created folder "/tmp"
|
||||
And user "Alice" has shared file "/tmp" with user "Brian"
|
||||
And user "Brian" has accepted share "/tmp" offered by user "Alice"
|
||||
When user "Alice" updates the last share using the sharing API with
|
||||
| permissions | share,delete,create,read |
|
||||
Then the HTTP status code should be "200"
|
||||
And as user "Brian" folder "/tmp" inside space "Shares Jail" should contain a property "ocs:share-permissions" with value "29"
|
||||
|
||||
|
||||
Scenario: Correct webdav share-permissions for received group shared folder with all permissions but edit
|
||||
Given group "grp1" has been created
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Alice" has created folder "/tmp"
|
||||
And user "Alice" has created a share with settings
|
||||
| path | tmp |
|
||||
| shareType | group |
|
||||
| shareWith | grp1 |
|
||||
| permissions | share,delete,create,read |
|
||||
And user "Brian" has accepted share "/tmp" offered by user "Alice"
|
||||
When user "Brian" gets the following properties of folder "/tmp" inside space "Shares Jail" using the WebDAV API
|
||||
| propertyName |
|
||||
| ocs:share-permissions |
|
||||
Then the HTTP status code should be "207"
|
||||
And the single response should contain a property "ocs:share-permissions" with value "29"
|
||||
|
||||
|
||||
Scenario: Correct webdav share-permissions for received folder with all permissions but create
|
||||
Given user "Alice" has created folder "/tmp"
|
||||
And user "Alice" has shared file "/tmp" with user "Brian"
|
||||
And user "Brian" has accepted share "/tmp" offered by user "Alice"
|
||||
When user "Alice" updates the last share using the sharing API with
|
||||
| permissions | share,delete,update,read |
|
||||
Then the HTTP status code should be "200"
|
||||
And as user "Brian" folder "/tmp" inside space "Shares Jail" should contain a property "ocs:share-permissions" with value "27"
|
||||
|
||||
|
||||
Scenario: Correct webdav share-permissions for received group shared folder with all permissions but create
|
||||
Given group "grp1" has been created
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Alice" has created folder "/tmp"
|
||||
And user "Alice" has created a share with settings
|
||||
| path | tmp |
|
||||
| shareType | group |
|
||||
| shareWith | grp1 |
|
||||
| permissions | share,delete,update,read |
|
||||
And user "Brian" has accepted share "/tmp" offered by user "Alice"
|
||||
When user "Brian" gets the following properties of folder "/tmp" inside space "Shares Jail" using the WebDAV API
|
||||
| propertyName |
|
||||
| ocs:share-permissions |
|
||||
Then the HTTP status code should be "207"
|
||||
And the single response should contain a property "ocs:share-permissions" with value "27"
|
||||
|
||||
|
||||
Scenario: Correct webdav share-permissions for received folder with all permissions but delete
|
||||
Given user "Alice" has created folder "/tmp"
|
||||
And user "Alice" has shared file "/tmp" with user "Brian"
|
||||
And user "Brian" has accepted share "/tmp" offered by user "Alice"
|
||||
When user "Alice" updates the last share using the sharing API with
|
||||
| permissions | share,create,update,read |
|
||||
Then the HTTP status code should be "200"
|
||||
And as user "Brian" folder "/tmp" inside space "Shares Jail" should contain a property "ocs:share-permissions" with value "23"
|
||||
|
||||
|
||||
Scenario: Correct webdav share-permissions for received group shared folder with all permissions but delete
|
||||
Given group "grp1" has been created
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Alice" has created folder "/tmp"
|
||||
And user "Alice" has created a share with settings
|
||||
| path | tmp |
|
||||
| shareType | group |
|
||||
| shareWith | grp1 |
|
||||
| permissions | share,create,update,read |
|
||||
And user "Brian" has accepted share "/tmp" offered by user "Alice"
|
||||
When user "Brian" gets the following properties of folder "/tmp" inside space "Shares Jail" using the WebDAV API
|
||||
| propertyName |
|
||||
| ocs:share-permissions |
|
||||
Then the HTTP status code should be "207"
|
||||
And the single response should contain a property "ocs:share-permissions" with value "23"
|
||||
|
||||
|
||||
Scenario: Correct webdav share-permissions for received folder with all permissions but share
|
||||
Given user "Alice" has created folder "/tmp"
|
||||
And user "Alice" has shared file "/tmp" with user "Brian"
|
||||
And user "Brian" has accepted share "/tmp" offered by user "Alice"
|
||||
When user "Alice" updates the last share using the sharing API with
|
||||
| permissions | change |
|
||||
Then the HTTP status code should be "200"
|
||||
And as user "Brian" folder "/tmp" inside space "Shares Jail" should contain a property "ocs:share-permissions" with value "15"
|
||||
|
||||
|
||||
Scenario: Correct webdav share-permissions for received group shared folder with all permissions but share
|
||||
Given group "grp1" has been created
|
||||
And user "Brian" has been added to group "grp1"
|
||||
And user "Alice" has created folder "/tmp"
|
||||
And user "Alice" has created a share with settings
|
||||
| path | tmp |
|
||||
| shareType | group |
|
||||
| shareWith | grp1 |
|
||||
| permissions | change |
|
||||
And user "Brian" has accepted share "/tmp" offered by user "Alice"
|
||||
When user "Brian" gets the following properties of folder "/tmp" inside space "Shares Jail" using the WebDAV API
|
||||
| propertyName |
|
||||
| ocs:share-permissions |
|
||||
Then the HTTP status code should be "207"
|
||||
And the single response should contain a property "ocs:share-permissions" with value "15"
|
||||
@@ -28,6 +28,7 @@ use Behat\Gherkin\Node\TableNode;
|
||||
use GuzzleHttp\Exception\GuzzleException;
|
||||
use Psr\Http\Message\ResponseInterface;
|
||||
use TestHelpers\HttpRequestHelper;
|
||||
use TestHelpers\WebDavHelper;
|
||||
use TestHelpers\SetupHelper;
|
||||
use TestHelpers\GraphHelper;
|
||||
use PHPUnit\Framework\Assert;
|
||||
@@ -54,6 +55,11 @@ class SpacesContext implements Context {
|
||||
*/
|
||||
private TrashbinContext $trashbinContext;
|
||||
|
||||
/**
|
||||
* @var WebDavPropertiesContext
|
||||
*/
|
||||
private WebDavPropertiesContext $webDavPropertiesContext;
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
@@ -386,6 +392,7 @@ class SpacesContext implements Context {
|
||||
$this->featureContext = $environment->getContext('FeatureContext');
|
||||
$this->ocsContext = $environment->getContext('OCSContext');
|
||||
$this->trashbinContext = $environment->getContext('TrashbinContext');
|
||||
$this->webDavPropertiesContext = $environment->getContext('WebDavPropertiesContext');
|
||||
// Run the BeforeScenario function in OCSContext to set it up correctly
|
||||
$this->ocsContext->before($scope);
|
||||
$this->baseUrl = \trim($this->featureContext->getBaseUrl(), "/");
|
||||
@@ -1318,7 +1325,7 @@ class SpacesContext implements Context {
|
||||
): array {
|
||||
$spaceId = $this->getResponseSpaceId();
|
||||
//if we are using that step the second time in a scenario e.g. 'But ... should not'
|
||||
//then don't parse the result again, because the result in a ResponseInterface
|
||||
//then don't parse the result again, because the result is in a ResponseInterface
|
||||
if (empty($this->getResponseXml())) {
|
||||
$this->setResponseXml(
|
||||
HttpRequestHelper::parseResponseAsXml($this->featureContext->getResponse())
|
||||
@@ -2979,4 +2986,91 @@ class SpacesContext implements Context {
|
||||
Assert::assertEmpty($responseArray, __METHOD__ . ' Response should be empty');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @When /^user "([^"]*)" gets the following properties of (?:file|folder|entry|resource) "([^"]*)" inside space "([^"]*)" using the WebDAV API$/
|
||||
*
|
||||
* @param string $user
|
||||
* @param string $resourceName
|
||||
* @param string $spaceName
|
||||
* @param TableNode|null $propertiesTable
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @throws Exception|GuzzleException
|
||||
*/
|
||||
public function userGetsTheFollowingPropertiesOfFileInsideSpaceUsingTheWebdavApi(
|
||||
string $user,
|
||||
string $resourceName,
|
||||
string $spaceName,
|
||||
TableNode $propertiesTable
|
||||
):void {
|
||||
$space = $this->getSpaceByName($user, $spaceName);
|
||||
$properties = null;
|
||||
$fullUrl = $space["root"]["webDavUrl"] . '/' . ltrim($resourceName, "/");
|
||||
$this->featureContext->verifyTableNodeColumns($propertiesTable, ["propertyName"]);
|
||||
$this->featureContext->verifyTableNodeColumnsCount($propertiesTable, 1);
|
||||
if ($propertiesTable instanceof TableNode) {
|
||||
foreach ($propertiesTable->getColumnsHash() as $row) {
|
||||
$properties[] = $row["propertyName"];
|
||||
}
|
||||
}
|
||||
$body = WebDavHelper::getBodyForPropfind($properties);
|
||||
$headers['Depth'] = '1';
|
||||
$this->featureContext->setResponse(
|
||||
$this->sendPropfindRequestToUrl(
|
||||
$fullUrl,
|
||||
$user,
|
||||
$this->featureContext->getPasswordForUser($user),
|
||||
'',
|
||||
$headers,
|
||||
$body
|
||||
)
|
||||
);
|
||||
$responseXml = $this->featureContext->getResponseXml(null, __METHOD__);
|
||||
$this->featureContext->setResponseXmlObject($responseXml);
|
||||
}
|
||||
|
||||
/**
|
||||
* @Then /^as user "([^"]*)" (?:file|folder|entry|resource) "([^"]*)" inside space "([^"]*)" should contain a property "([^"]*)" with value "([^"]*)"$/
|
||||
*
|
||||
* @param string $user
|
||||
* @param string $resourceName
|
||||
* @param string $spaceName
|
||||
* @param string $property
|
||||
* @param string $expectedValue
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @throws Exception|GuzzleException
|
||||
*/
|
||||
public function asUserFileInsideSpaceShouldContainAPropertyWithValue(
|
||||
string $user,
|
||||
string $resourceName,
|
||||
string $spaceName,
|
||||
string $property,
|
||||
string $expectedValue
|
||||
):void {
|
||||
$space = $this->getSpaceByName($user, $spaceName);
|
||||
$fullUrl = $space["root"]["webDavUrl"] . '/' . ltrim($resourceName, "/");
|
||||
$body = WebDavHelper::getBodyForPropfind([$property]);
|
||||
$headers['Depth'] = '1';
|
||||
$this->featureContext->setResponse(
|
||||
$this->sendPropfindRequestToUrl(
|
||||
$fullUrl,
|
||||
$user,
|
||||
$this->featureContext->getPasswordForUser($user),
|
||||
'',
|
||||
$headers,
|
||||
$body
|
||||
)
|
||||
);
|
||||
$responseXml = $this->featureContext->getResponseXml(null, __METHOD__);
|
||||
$this->featureContext->setResponseXmlObject($responseXml);
|
||||
$this->webDavPropertiesContext->checkSingleResponseContainsAPropertyWithValueAndAlternative(
|
||||
$property,
|
||||
$expectedValue,
|
||||
$expectedValue
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user