mirror of
https://github.com/opencloud-eu/opencloud.git
synced 2026-02-28 09:29:41 -06:00
[tests-only][full-ci]Move locks related tests to local api tests and link the failing lock tests with correct issues (#7643)
* Link the failing lock tests with correct issues that they are failing with * Move locks relates tests to new suite Signed-off-by: Swikriti Tripathi <swikriti808@gmail.com> * address reviews Signed-off-by: Swikriti Tripathi <swikriti808@gmail.com> * Add new scenario for trying to lock a folder Signed-off-by: Swikriti Tripathi <swikriti808@gmail.com> --------- Signed-off-by: Swikriti Tripathi <swikriti808@gmail.com>
This commit is contained in:
committed by
GitHub
parent
a9afb49bed
commit
792c8cc1b9
@@ -60,40 +60,6 @@ Synchronization features like etag propagation, setting mtime and locking files
|
||||
- [coreApiMain/checksums.feature:263](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiMain/checksums.feature#L263)
|
||||
|
||||
#### [Webdav LOCK operations](https://github.com/owncloud/ocis/issues/1284)
|
||||
|
||||
- [coreApiWebdavLocks/requestsWithToken.feature:31](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks/requestsWithToken.feature#L31)
|
||||
- [coreApiWebdavLocks/requestsWithToken.feature:32](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks/requestsWithToken.feature#L32)
|
||||
- [coreApiWebdavLocks/requestsWithToken.feature:37](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks/requestsWithToken.feature#L37)
|
||||
- [coreApiWebdavLocks2/independentLocks.feature:25](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocks.feature#L25)
|
||||
- [coreApiWebdavLocks2/independentLocks.feature:26](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocks.feature#L26)
|
||||
- [coreApiWebdavLocks2/independentLocks.feature:27](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocks.feature#L27)
|
||||
- [coreApiWebdavLocks2/independentLocks.feature:28](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocks.feature#L28)
|
||||
- [coreApiWebdavLocks2/independentLocks.feature:33](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocks.feature#L33)
|
||||
- [coreApiWebdavLocks2/independentLocks.feature:34](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocks.feature#L34)
|
||||
- [coreApiWebdavLocks2/independentLocks.feature:53](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocks.feature#L53)
|
||||
- [coreApiWebdavLocks2/independentLocks.feature:54](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocks.feature#L54)
|
||||
- [coreApiWebdavLocks2/independentLocks.feature:55](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocks.feature#L55)
|
||||
- [coreApiWebdavLocks2/independentLocks.feature:56](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocks.feature#L56)
|
||||
- [coreApiWebdavLocks2/independentLocks.feature:57](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocks.feature#L57)
|
||||
- [coreApiWebdavLocks2/independentLocks.feature:58](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocks.feature#L58)
|
||||
- [coreApiWebdavLocks2/independentLocks.feature:59](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocks.feature#L59)
|
||||
- [coreApiWebdavLocks2/independentLocks.feature:60](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocks.feature#L60)
|
||||
- [coreApiWebdavLocks2/independentLocks.feature:65](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocks.feature#L65)
|
||||
- [coreApiWebdavLocks2/independentLocks.feature:66](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocks.feature#L66)
|
||||
- [coreApiWebdavLocks2/independentLocks.feature:67](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocks.feature#L67)
|
||||
- [coreApiWebdavLocks2/independentLocks.feature:68](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocks.feature#L68)
|
||||
- [coreApiWebdavLocks2/independentLocksShareToShares.feature:28](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocksShareToShares.feature#L28)
|
||||
- [coreApiWebdavLocks2/independentLocksShareToShares.feature:29](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocksShareToShares.feature#L29)
|
||||
- [coreApiWebdavLocks2/independentLocksShareToShares.feature:30](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocksShareToShares.feature#L30)
|
||||
- [coreApiWebdavLocks2/independentLocksShareToShares.feature:31](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocksShareToShares.feature#L31)
|
||||
- [coreApiWebdavLocks2/independentLocksShareToShares.feature:36](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocksShareToShares.feature#L36)
|
||||
- [coreApiWebdavLocks2/independentLocksShareToShares.feature:37](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocksShareToShares.feature#L37)
|
||||
- [coreApiWebdavLocks2/independentLocksShareToShares.feature:55](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocksShareToShares.feature#L55)
|
||||
- [coreApiWebdavLocks2/independentLocksShareToShares.feature:56](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocksShareToShares.feature#L56)
|
||||
- [coreApiWebdavLocks2/independentLocksShareToShares.feature:57](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocksShareToShares.feature#L57)
|
||||
- [coreApiWebdavLocks2/independentLocksShareToShares.feature:58](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocksShareToShares.feature#L58)
|
||||
- [coreApiWebdavLocks2/independentLocksShareToShares.feature:63](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocksShareToShares.feature#L63)
|
||||
- [coreApiWebdavLocks2/independentLocksShareToShares.feature:64](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocks2/independentLocksShareToShares.feature#L64)
|
||||
- [coreApiWebdavLocksUnlock/unlock.feature:23](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocksUnlock/unlock.feature#L23)
|
||||
- [coreApiWebdavLocksUnlock/unlock.feature:24](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocksUnlock/unlock.feature#L24)
|
||||
- [coreApiWebdavLocksUnlock/unlock.feature:29](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/coreApiWebdavLocksUnlock/unlock.feature#L29)
|
||||
|
||||
@@ -148,6 +148,39 @@ The expected failures in this file are from features in the owncloud/ocis repo.
|
||||
- [apiLocks/lockFiles.feature:179](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L179)
|
||||
- [apiLocks/lockFiles.feature:180](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L180)
|
||||
- [apiLocks/lockFiles.feature:181](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L181)
|
||||
- [apiLocks/lockFiles.feature:280](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L280)
|
||||
- [apiLocks/lockFiles.feature:281](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L281)
|
||||
- [apiLocks/lockFiles.feature:282](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L282)
|
||||
- [apiLocks/lockFiles.feature:323](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L323)
|
||||
- [apiLocks/lockFiles.feature:324](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L324)
|
||||
- [apiLocks/lockFiles.feature:325](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L325)
|
||||
- [apiLocks/lockFiles.feature:326](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L326)
|
||||
- [apiLocks/lockFiles.feature:327](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L327)
|
||||
- [apiLocks/lockFiles.feature:328](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L328)
|
||||
- [apiLocks/lockFiles.feature:346](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L346)
|
||||
- [apiLocks/lockFiles.feature:347](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L347)
|
||||
- [apiLocks/lockFiles.feature:348](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L348)
|
||||
- [apiLocks/lockFiles.feature:349](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L349)
|
||||
- [apiLocks/lockFiles.feature:350](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L350)
|
||||
- [apiLocks/lockFiles.feature:351](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L351)
|
||||
|
||||
#### [Trying to upload to a locked file gives 500](https://github.com/owncloud/ocis/issues/7638)
|
||||
|
||||
- [apiLocks/lockFiles.feature:299](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L299)
|
||||
- [apiLocks/lockFiles.feature:300](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L300)
|
||||
- [apiLocks/lockFiles.feature:301](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L301)
|
||||
- [apiLocks/lockFiles.feature:302](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L302)
|
||||
- [apiLocks/lockFiles.feature:303](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L303)
|
||||
- [apiLocks/lockFiles.feature:304](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L304)
|
||||
|
||||
#### [Folders can be locked and locking works partially](https://github.com/owncloud/ocis/issues/7641)
|
||||
|
||||
- [apiLocks/lockFiles.feature:364](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L364)
|
||||
- [apiLocks/lockFiles.feature:365](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L365)
|
||||
- [apiLocks/lockFiles.feature:366](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L366)
|
||||
- [apiLocks/lockFiles.feature:367](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L367)
|
||||
- [apiLocks/lockFiles.feature:368](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L368)
|
||||
- [apiLocks/lockFiles.feature:369](https://github.com/owncloud/ocis/blob/master/tests/acceptance/features/apiLocks/lockFiles.feature#L369)
|
||||
|
||||
Note: always have an empty line at the end of this file.
|
||||
The bash script that processes this file requires that the last line has a newline on the end.
|
||||
|
||||
@@ -256,3 +256,114 @@ Feature: lock files
|
||||
| key | value |
|
||||
| d:lockdiscovery/d:activelock/d:lockscope/d:exclusive | |
|
||||
| d:lockdiscovery/d:activelock/oc:ownername | Brian Murphy |
|
||||
|
||||
@issue-7599
|
||||
Scenario Outline: two users having both a shared lock can use the resource
|
||||
Given using <dav-path-version> DAV path
|
||||
And user "Alice" has uploaded file with content "some data" to "textfile0.txt"
|
||||
And user "Brian" has uploaded file with content "some data" to "textfile0.txt"
|
||||
And user "Alice" has shared file "/textfile0.txt" with user "Brian"
|
||||
And user "Alice" has locked file "textfile0.txt" setting the following properties
|
||||
| lockscope | shared |
|
||||
And user "Brian" has locked file "Shares/textfile0.txt" setting the following properties
|
||||
| lockscope | shared |
|
||||
When user "Alice" uploads file with content "from user 0" to "textfile0.txt" sending the locktoken of file "textfile0.txt" using the WebDAV API
|
||||
Then the HTTP status code should be "204"
|
||||
And the content of file "textfile0.txt" for user "Alice" should be "from user 0"
|
||||
And the content of file "Shares/textfile0.txt" for user "Brian" should be "from user 0"
|
||||
When user "Brian" uploads file with content "from user 1" to "Shares/textfile0.txt" sending the locktoken of file "Shares/textfile0.txt" using the WebDAV API
|
||||
Then the HTTP status code should be "204"
|
||||
And the content of file "textfile0.txt" for user "Alice" should be "from user 1"
|
||||
And the content of file "Shares/textfile0.txt" for user "Brian" should be "from user 1"
|
||||
Examples:
|
||||
| dav-path-version |
|
||||
| old |
|
||||
| new |
|
||||
| spaces |
|
||||
|
||||
@issue-7638
|
||||
Scenario Outline: locking a file does not lock other items with the same name in other parts of the file system
|
||||
Given using <dav-path-version> DAV path
|
||||
And user "Alice" has created folder "locked"
|
||||
And user "Alice" has uploaded file "filesForUpload/textfile.txt" to "/locked/textfile0.txt"
|
||||
And user "Alice" has created folder "notlocked"
|
||||
And user "Alice" has created folder "notlocked/textfile0.txt"
|
||||
When user "Alice" locks file "locked/textfile0.txt" using the WebDAV API setting the following properties
|
||||
| lockscope | <lock-scope> |
|
||||
Then the HTTP status code should be "200"
|
||||
And user "Alice" should be able to upload file "filesForUpload/lorem.txt" to "/notlocked/textfile0.txt/real-file.txt"
|
||||
And user "Alice" should be able to upload file "filesForUpload/lorem.txt" to "/textfile0.txt"
|
||||
But user "Alice" should not be able to upload file "filesForUpload/lorem.txt" to "/locked/textfile0.txt"
|
||||
Examples:
|
||||
| dav-path-version | lock-scope |
|
||||
| old | shared |
|
||||
| old | exclusive |
|
||||
| new | shared |
|
||||
| new | exclusive |
|
||||
| spaces | shared |
|
||||
| spaces | exclusive |
|
||||
|
||||
@issue-7638 @issue-7599
|
||||
Scenario Outline: locking a file in a received share does not lock other items with the same name in other received shares (shares from different users)
|
||||
Given using <dav-path-version> DAV path
|
||||
And user "Carol" has been created with default attributes and without skeleton files
|
||||
And user "Alice" has created folder "FromAlice"
|
||||
And user "Brian" has created folder "FromBrian"
|
||||
And user "Alice" has uploaded file "filesForUpload/textfile.txt" to "/FromAlice/textfile0.txt"
|
||||
And user "Brian" has uploaded file "filesForUpload/textfile.txt" to "/FromBrian/textfile0.txt"
|
||||
And user "Alice" has shared folder "FromAlice" with user "Carol"
|
||||
And user "Brian" has shared folder "FromBrian" with user "Carol"
|
||||
When user "Carol" locks file "/Shares/FromBrian/textfile0.txt" using the WebDAV API setting the following properties
|
||||
| lockscope | <lock-scope> |
|
||||
Then the HTTP status code should be "200"
|
||||
And user "Carol" should be able to upload file "filesForUpload/lorem.txt" to "/Shares/FromAlice/textfile0.txt"
|
||||
But user "Carol" should not be able to upload file "filesForUpload/lorem.txt" to "/Shares/FromBrian/textfile0.txt"
|
||||
Examples:
|
||||
| dav-path-version | lock-scope |
|
||||
| old | shared |
|
||||
| old | exclusive |
|
||||
| new | shared |
|
||||
| new | exclusive |
|
||||
| spaces | shared |
|
||||
| spaces | exclusive |
|
||||
|
||||
@issue-7638 @issue-7599
|
||||
Scenario Outline: locking a file in a received share does not lock other items with the same name in other received shares (shares from same user)
|
||||
Given using <dav-path-version> DAV path
|
||||
And user "Alice" has created folder "locked/"
|
||||
And user "Alice" has created folder "notlocked/"
|
||||
And user "Alice" has uploaded file "filesForUpload/textfile.txt" to "/locked/textfile0.txt"
|
||||
And user "Alice" has uploaded file "filesForUpload/textfile.txt" to "/notlocked/textfile0.txt"
|
||||
And user "Alice" has shared folder "locked" with user "Brian"
|
||||
And user "Alice" has shared folder "notlocked" with user "Brian"
|
||||
When user "Brian" locks file "/Shares/locked/textfile0.txt" using the WebDAV API setting the following properties
|
||||
| lockscope | <lock-scope> |
|
||||
Then the HTTP status code should be "200"
|
||||
And user "Brian" should be able to upload file "filesForUpload/lorem.txt" to "/Shares/notlocked/textfile0.txt"
|
||||
But user "Brian" should not be able to upload file "filesForUpload/lorem.txt" to "/Shares/locked/textfile0.txt"
|
||||
Examples:
|
||||
| dav-path-version | lock-scope |
|
||||
| old | shared |
|
||||
| old | exclusive |
|
||||
| new | shared |
|
||||
| new | exclusive |
|
||||
| spaces | shared |
|
||||
| spaces | exclusive |
|
||||
|
||||
@issue-7641
|
||||
Scenario Outline: try to lock a folder
|
||||
Given using <dav-path-version> DAV path
|
||||
And user "Alice" has created folder "locked/"
|
||||
When user "Alice" tries to lock folder "locked/" using the WebDAV API setting the following properties
|
||||
| lockscope | <lock-scope> |
|
||||
Then the HTTP status code should be "403"
|
||||
And user "Alice" should be able to upload file "filesForUpload/lorem.txt" to "locked/textfile0.txt"
|
||||
And user "Alice" should be able to create folder "/locked/sub-folder"
|
||||
Examples:
|
||||
| dav-path-version | lock-scope |
|
||||
| old | shared |
|
||||
| old | exclusive |
|
||||
| new | shared |
|
||||
| new | exclusive |
|
||||
| spaces | shared |
|
||||
| spaces | exclusive |
|
||||
|
||||
@@ -144,7 +144,7 @@ class WebDavLockingContext implements Context {
|
||||
}
|
||||
|
||||
/**
|
||||
* @When user :user tries to lock file :file using the WebDAV API setting the following properties
|
||||
* @When user :user tries to lock file/folder :file using the WebDAV API setting the following properties
|
||||
*
|
||||
* @param string $user
|
||||
* @param string $file
|
||||
|
||||
@@ -1,37 +0,0 @@
|
||||
@issue-1284 @skipOnReva
|
||||
Feature: actions on a locked item are possible if the token is sent with the request
|
||||
As a user
|
||||
I want to share the lock token of a resource
|
||||
So that the users or apps can access the resource that I have locked
|
||||
|
||||
Background:
|
||||
Given user "Alice" has been created with default attributes and without skeleton files
|
||||
|
||||
|
||||
Scenario Outline: two users having both a shared lock can use the resource
|
||||
Given using <dav-path-version> DAV path
|
||||
And user "Brian" has been created with default attributes and without skeleton files
|
||||
And user "Alice" has uploaded file with content "some data" to "textfile0.txt"
|
||||
And user "Brian" has uploaded file with content "some data" to "textfile0.txt"
|
||||
And user "Alice" has shared file "/textfile0.txt" with user "Brian"
|
||||
And user "Alice" has locked file "textfile0.txt" setting the following properties
|
||||
| lockscope | shared |
|
||||
And user "Brian" has locked file "Shares/textfile0.txt" setting the following properties
|
||||
| lockscope | shared |
|
||||
When user "Alice" uploads file with content "from user 0" to "textfile0.txt" sending the locktoken of file "textfile0.txt" using the WebDAV API
|
||||
Then the HTTP status code should be "204"
|
||||
And the content of file "textfile0.txt" for user "Alice" should be "from user 0"
|
||||
And the content of file "Shares/textfile0.txt" for user "Brian" should be "from user 0"
|
||||
When user "Brian" uploads file with content "from user 1" to "Shares/textfile0.txt" sending the locktoken of file "Shares/textfile0.txt" using the WebDAV API
|
||||
Then the HTTP status code should be "204"
|
||||
And the content of file "textfile0.txt" for user "Alice" should be "from user 1"
|
||||
And the content of file "Shares/textfile0.txt" for user "Brian" should be "from user 1"
|
||||
Examples:
|
||||
| dav-path-version |
|
||||
| old |
|
||||
| new |
|
||||
|
||||
@skipOnRevaMaster
|
||||
Examples:
|
||||
| dav-path-version |
|
||||
| spaces |
|
||||
@@ -1,68 +0,0 @@
|
||||
@issue-1284
|
||||
Feature: independent locks - make sure all locks are independent and don't interact with other items that have the same name
|
||||
As a user
|
||||
I want to lock resources independently
|
||||
So that resources with same name in other parts of the file system will not be locked
|
||||
|
||||
Background:
|
||||
Given user "Alice" has been created with default attributes and without skeleton files
|
||||
|
||||
|
||||
Scenario Outline: locking a file does not lock other items with the same name in other parts of the file system
|
||||
Given using <dav-path-version> DAV path
|
||||
And user "Alice" has created folder "locked"
|
||||
And user "Alice" has uploaded file "filesForUpload/textfile.txt" to "/locked/textfile0.txt"
|
||||
And user "Alice" has created folder "notlocked"
|
||||
And user "Alice" has created folder "notlocked/textfile0.txt"
|
||||
When user "Alice" locks file "locked/textfile0.txt" using the WebDAV API setting the following properties
|
||||
| lockscope | <lock-scope> |
|
||||
Then the HTTP status code should be "200"
|
||||
And user "Alice" should be able to upload file "filesForUpload/lorem.txt" to "/notlocked/textfile0.txt/real-file.txt"
|
||||
And user "Alice" should be able to upload file "filesForUpload/lorem.txt" to "/textfile0.txt"
|
||||
But user "Alice" should not be able to upload file "filesForUpload/lorem.txt" to "/locked/textfile0.txt"
|
||||
Examples:
|
||||
| dav-path-version | lock-scope |
|
||||
| old | shared |
|
||||
| old | exclusive |
|
||||
| new | shared |
|
||||
| new | exclusive |
|
||||
|
||||
@skipOnRevaMaster
|
||||
Examples:
|
||||
| dav-path-version | lock-scope |
|
||||
| spaces | shared |
|
||||
| spaces | exclusive |
|
||||
|
||||
|
||||
Scenario Outline: locking a file/folder with git specific names does not lock other items with the same name in other parts of the file system
|
||||
Given using <dav-path-version> DAV path
|
||||
And user "Alice" has created folder "locked/"
|
||||
And user "Alice" has created folder "locked/.git"
|
||||
And user "Alice" has uploaded file "filesForUpload/textfile.txt" to "/locked/.git/config"
|
||||
And user "Alice" has created folder "notlocked/"
|
||||
And user "Alice" has created folder "notlocked/"
|
||||
And user "Alice" has uploaded file "filesForUpload/textfile.txt" to "notlocked/.git/config"
|
||||
When user "Alice" locks file "locked/<to-lock>" using the WebDAV API setting the following properties
|
||||
| lockscope | <lock-scope> |
|
||||
Then the HTTP status code should be "200"
|
||||
And user "Alice" should be able to upload file "filesForUpload/lorem.txt" to "/notlocked/.git/file.txt"
|
||||
And user "Alice" should be able to upload file "filesForUpload/lorem.txt" to "/notlocked/.git/config"
|
||||
But user "Alice" should not be able to upload file "filesForUpload/lorem.txt" to "/locked/.git/config"
|
||||
Examples:
|
||||
| dav-path-version | lock-scope | to-lock |
|
||||
| old | shared | .git |
|
||||
| old | shared | .git/config |
|
||||
| old | exclusive | .git |
|
||||
| old | exclusive | .git/config |
|
||||
| new | shared | .git |
|
||||
| new | shared | .git/config |
|
||||
| new | exclusive | .git |
|
||||
| new | exclusive | .git/config |
|
||||
|
||||
@skipOnRevaMaster
|
||||
Examples:
|
||||
| dav-path-version | lock-scope | to-lock |
|
||||
| spaces | shared | .git |
|
||||
| spaces | shared | .git/config |
|
||||
| spaces | exclusive | .git |
|
||||
| spaces | exclusive | .git/config |
|
||||
@@ -1,64 +0,0 @@
|
||||
@issue-1284 @skipOnReva
|
||||
Feature: independent locks - make sure all locks are independent and don't interact with other items that have the same name
|
||||
As a user
|
||||
I want to independently lock resources shared with me
|
||||
So that resources with same name in other received shares will not be locked
|
||||
|
||||
Background:
|
||||
Given user "Alice" has been created with default attributes and without skeleton files
|
||||
And user "Brian" has been created with default attributes and without skeleton files
|
||||
|
||||
|
||||
Scenario Outline: locking a file in a received share does not lock other items with the same name in other received shares (shares from different users)
|
||||
Given using <dav-path-version> DAV path
|
||||
And user "Carol" has been created with default attributes and without skeleton files
|
||||
And user "Alice" has created folder "FromAlice"
|
||||
And user "Brian" has created folder "FromBrian"
|
||||
And user "Alice" has uploaded file "filesForUpload/textfile.txt" to "/FromAlice/textfile0.txt"
|
||||
And user "Brian" has uploaded file "filesForUpload/textfile.txt" to "/FromBrian/textfile0.txt"
|
||||
And user "Alice" has shared folder "FromAlice" with user "Carol"
|
||||
And user "Brian" has shared folder "FromBrian" with user "Carol"
|
||||
When user "Carol" locks file "/Shares/FromBrian/textfile0.txt" using the WebDAV API setting the following properties
|
||||
| lockscope | <lock-scope> |
|
||||
Then the HTTP status code should be "200"
|
||||
And user "Carol" should be able to upload file "filesForUpload/lorem.txt" to "/Shares/FromAlice/textfile0.txt"
|
||||
But user "Carol" should not be able to upload file "filesForUpload/lorem.txt" to "/Shares/FromBrian/textfile0.txt"
|
||||
Examples:
|
||||
| dav-path-version | lock-scope |
|
||||
| old | shared |
|
||||
| old | exclusive |
|
||||
| new | shared |
|
||||
| new | exclusive |
|
||||
|
||||
@skipOnRevaMaster
|
||||
Examples:
|
||||
| dav-path-version | lock-scope |
|
||||
| spaces | shared |
|
||||
| spaces | exclusive |
|
||||
|
||||
|
||||
Scenario Outline: locking a file in a received share does not lock other items with the same name in other received shares (shares from same user)
|
||||
Given using <dav-path-version> DAV path
|
||||
And user "Alice" has created folder "locked/"
|
||||
And user "Alice" has created folder "notlocked/"
|
||||
And user "Alice" has uploaded file "filesForUpload/textfile.txt" to "/locked/textfile0.txt"
|
||||
And user "Alice" has uploaded file "filesForUpload/textfile.txt" to "/notlocked/textfile0.txt"
|
||||
And user "Alice" has shared folder "locked" with user "Brian"
|
||||
And user "Alice" has shared folder "notlocked" with user "Brian"
|
||||
When user "Brian" locks file "/Shares/locked/textfile0.txt" using the WebDAV API setting the following properties
|
||||
| lockscope | <lock-scope> |
|
||||
Then the HTTP status code should be "200"
|
||||
And user "Brian" should be able to upload file "filesForUpload/lorem.txt" to "/Shares/notlocked/textfile0.txt"
|
||||
But user "Brian" should not be able to upload file "filesForUpload/lorem.txt" to "/Shares/locked/textfile0.txt"
|
||||
Examples:
|
||||
| dav-path-version | lock-scope |
|
||||
| old | shared |
|
||||
| old | exclusive |
|
||||
| new | shared |
|
||||
| new | exclusive |
|
||||
|
||||
@skipOnRevaMaster
|
||||
Examples:
|
||||
| dav-path-version | lock-scope |
|
||||
| spaces | shared |
|
||||
| spaces | exclusive |
|
||||
Reference in New Issue
Block a user