summaryrefslogtreecommitdiffstats
path: root/build
diff options
context:
space:
mode:
authorVincent Petry <pvince81@owncloud.com>2016-07-22 11:42:21 +0200
committerRoeland Jago Douma <roeland@famdouma.nl>2016-08-03 10:16:28 +0200
commit6d8d5f7bc5fbd45846a15d33b0e0a5db55a5c85e (patch)
treea4eddf6f901b987b0e2598bf2c8cfd4df0be8fcf /build
parent2404f6a5a722d5e97481e025b2869dd899228390 (diff)
downloadnextcloud-server-6d8d5f7bc5fbd45846a15d33b0e0a5db55a5c85e.tar.gz
nextcloud-server-6d8d5f7bc5fbd45846a15d33b0e0a5db55a5c85e.zip
Add integration tests for double shares with rename in between
Diffstat (limited to 'build')
-rw-r--r--build/integration/features/bootstrap/WebDav.php8
-rw-r--r--build/integration/features/sharing-v1.feature30
2 files changed, 34 insertions, 4 deletions
diff --git a/build/integration/features/bootstrap/WebDav.php b/build/integration/features/bootstrap/WebDav.php
index 262955e4e5c..02f3e82a4c3 100644
--- a/build/integration/features/bootstrap/WebDav.php
+++ b/build/integration/features/bootstrap/WebDav.php
@@ -87,12 +87,12 @@ trait WebDav {
}
/**
- * @Given /^User "([^"]*)" moved file "([^"]*)" to "([^"]*)"$/
+ * @Given /^User "([^"]*)" moved (file|folder|entry) "([^"]*)" to "([^"]*)"$/
* @param string $user
* @param string $fileSource
* @param string $fileDestination
*/
- public function userMovedFile($user, $fileSource, $fileDestination){
+ public function userMovedFile($user, $entry, $fileSource, $fileDestination){
$fullUrl = substr($this->baseUrl, 0, -4) . $this->davPath;
$headers['Destination'] = $fullUrl . $fileDestination;
$this->response = $this->makeDavRequest($user, "MOVE", $fileSource, $headers);
@@ -100,12 +100,12 @@ trait WebDav {
}
/**
- * @When /^User "([^"]*)" moves file "([^"]*)" to "([^"]*)"$/
+ * @When /^User "([^"]*)" moves (file|folder|entry) "([^"]*)" to "([^"]*)"$/
* @param string $user
* @param string $fileSource
* @param string $fileDestination
*/
- public function userMovesFile($user, $fileSource, $fileDestination){
+ public function userMovesFile($user, $entry, $fileSource, $fileDestination){
$fullUrl = substr($this->baseUrl, 0, -4) . $this->davPath;
$headers['Destination'] = $fullUrl . $fileDestination;
$this->response = $this->makeDavRequest($user, "MOVE", $fileSource, $headers);
diff --git a/build/integration/features/sharing-v1.feature b/build/integration/features/sharing-v1.feature
index 69b2d6792c6..016b204bf90 100644
--- a/build/integration/features/sharing-v1.feature
+++ b/build/integration/features/sharing-v1.feature
@@ -888,3 +888,33 @@ Feature: sharing
And the single response should contain a property "{http://owncloud.org/ns}permissions" with value "RDNVCK"
And as "user0" the folder "merge-test-inside-twogroups-perms (2)" does not exist
And as "user0" the folder "merge-test-inside-twogroups-perms (3)" does not exist
+
+ Scenario: Merging shares for recipient when shared from outside with group then user and recipient renames in between
+ Given As an "admin"
+ And user "user0" exists
+ And user "user1" exists
+ And group "group1" exists
+ And user "user1" belongs to group "group1"
+ And user "user0" created a folder "merge-test-outside-groups-renamebeforesecondshare"
+ When folder "merge-test-outside-groups-renamebeforesecondshare" of user "user0" is shared with group "group1"
+ And User "user1" moved folder "/merge-test-outside-groups-renamebeforesecondshare" to "/merge-test-outside-groups-renamebeforesecondshare-renamed"
+ And folder "merge-test-outside-groups-renamebeforesecondshare" of user "user0" is shared with user "user1"
+ Then as "user1" gets properties of folder "merge-test-outside-groups-renamebeforesecondshare-renamed" with
+ |{http://owncloud.org/ns}permissions|
+ And the single response should contain a property "{http://owncloud.org/ns}permissions" with value "SRDNVCK"
+ And as "user1" the folder "merge-test-outside-groups-renamebeforesecondshare" does not exist
+
+ Scenario: Merging shares for recipient when shared from outside with user then group and recipient renames in between
+ Given As an "admin"
+ And user "user0" exists
+ And user "user1" exists
+ And group "group1" exists
+ And user "user1" belongs to group "group1"
+ And user "user0" created a folder "merge-test-outside-groups-renamebeforesecondshare"
+ When folder "merge-test-outside-groups-renamebeforesecondshare" of user "user0" is shared with user "user1"
+ And User "user1" moved folder "/merge-test-outside-groups-renamebeforesecondshare" to "/merge-test-outside-groups-renamebeforesecondshare-renamed"
+ And folder "merge-test-outside-groups-renamebeforesecondshare" of user "user0" is shared with group "group1"
+ Then as "user1" gets properties of folder "merge-test-outside-groups-renamebeforesecondshare-renamed" with
+ |{http://owncloud.org/ns}permissions|
+ And the single response should contain a property "{http://owncloud.org/ns}permissions" with value "SRDNVCK"
+ And as "user1" the folder "merge-test-outside-groups-renamebeforesecondshare" does not exist