Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions build/integration/features/bootstrap/CommandLineContext.php
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
require __DIR__ . '/../../vendor/autoload.php';

use Behat\Behat\Hook\Scope\BeforeScenarioScope;
use PHPUnit\Framework\Assert;

class CommandLineContext implements \Behat\Behat\Context\Context {
use CommandLine;
Expand Down Expand Up @@ -129,4 +130,11 @@ public function usingTransferFolderAsDavPath($user) {
$davPath = rtrim($davPath, '/') . $this->lastTransferPath;
$this->featureContext->usingDavPath($davPath);
}

/**
* @Then /^transfer folder name contains "([^"]+)"$/
*/
public function transferFolderNameContains($text) {
Assert::assertContains($text, $this->lastTransferPath);
}
}
2 changes: 1 addition & 1 deletion build/integration/features/bootstrap/Provisioning.php
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ public function assureUserExists($user) {
}

/**
* @Given /^user "([^"]*)" with displayname "([^"]*)" exists$/
* @Given /^user "([^"]*)" with displayname "((?:[^"]|\\")*)" exists$/
* @param string $user
*/
public function assureUserWithDisplaynameExists($user, $displayname) {
Expand Down
97 changes: 97 additions & 0 deletions build/integration/features/transfer-ownership.feature
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,22 @@ Feature: transfer-ownership
And using received transfer folder of "user1" as dav path
And as "user1" the folder "/test" exists

Scenario: transferring ownership from user with risky display name
Given user "user0" with displayname "user0 \"risky\"? ヂspḷay 'na|\/|e':.#" exists
And user "user1" exists
And User "user0" created a folder "/test"
And User "user0" uploads file "data/textfile.txt" to "/test/somefile.txt"
When transferring ownership from "user0" to "user1"
And the command was successful
And As an "user1"
And using received transfer folder of "user1" as dav path
Then Downloaded content when downloading file "/test/somefile.txt" with range "bytes=0-6" should be "This is"
And transfer folder name contains "transferred from user0 -risky- ヂspḷay -na|-|e- on"
And using old dav path
And as "user0" the folder "/test" does not exist
And using received transfer folder of "user1" as dav path
And as "user1" the folder "/test" exists

Scenario: transferring ownership of file shares
Given user "user0" exists
And user "user1" exists
Expand Down Expand Up @@ -290,6 +306,20 @@ Feature: transfer-ownership
Then the command error output contains the text "Unknown target user"
And the command failed with exit code 1

Scenario: transferring ownership of a file
Given user "user0" exists
And user "user1" exists
And User "user0" uploads file "data/textfile.txt" to "/somefile.txt"
When transferring ownership of path "somefile.txt" from "user0" to "user1"
And the command was successful
And As an "user1"
And using received transfer folder of "user1" as dav path
Then Downloaded content when downloading file "/somefile.txt" with range "bytes=0-6" should be "This is"
And using old dav path
And as "user0" the file "/somefile.txt" does not exist
And using received transfer folder of "user1" as dav path
And as "user1" the file "/somefile.txt" exists

Scenario: transferring ownership of a folder
Given user "user0" exists
And user "user1" exists
Expand All @@ -305,6 +335,73 @@ Feature: transfer-ownership
And using received transfer folder of "user1" as dav path
And as "user1" the folder "/test" exists

Scenario: transferring ownership from user with risky display name
Given user "user0" with displayname "user0 \"risky\"? ヂspḷay 'na|\/|e':.#" exists
And user "user1" exists
And User "user0" created a folder "/test"
And User "user0" uploads file "data/textfile.txt" to "/test/somefile.txt"
When transferring ownership of path "test" from "user0" to "user1"
And the command was successful
And As an "user1"
And using received transfer folder of "user1" as dav path
Then Downloaded content when downloading file "/test/somefile.txt" with range "bytes=0-6" should be "This is"
And transfer folder name contains "transferred from user0 -risky- ヂspḷay -na|-|e- on"
And using old dav path
And as "user0" the folder "/test" does not exist
And using received transfer folder of "user1" as dav path
And as "user1" the folder "/test" exists

Scenario: transferring ownership of path does not affect other files
Given user "user0" exists
And user "user1" exists
And User "user0" created a folder "/test"
And User "user0" uploads file "data/textfile.txt" to "/test/somefile.txt"
And User "user0" created a folder "/test2"
And User "user0" uploads file "data/textfile.txt" to "/test2/somefile.txt"
When transferring ownership of path "test" from "user0" to "user1"
And the command was successful
And As an "user1"
And using received transfer folder of "user1" as dav path
Then Downloaded content when downloading file "/test/somefile.txt" with range "bytes=0-6" should be "This is"
And using old dav path
And as "user0" the folder "/test" does not exist
And as "user0" the folder "/test2" exists
And as "user0" the file "/test2/somefile.txt" exists
And using received transfer folder of "user1" as dav path
And as "user1" the folder "/test" exists
And as "user1" the folder "/test2" does not exist

Scenario: transferring ownership of path does not affect other shares
Given user "user0" exists
And user "user1" exists
And User "user0" created a folder "/test"
And User "user0" uploads file "data/textfile.txt" to "/test/somefile.txt"
And User "user0" created a folder "/test2"
And User "user0" uploads file "data/textfile.txt" to "/test2/sharedfile.txt"
And file "/test2/sharedfile.txt" of user "user0" is shared with user "user1" with permissions 19
And user "user1" accepts last share
When transferring ownership of path "test" from "user0" to "user1"
And the command was successful
And As an "user1"
And using received transfer folder of "user1" as dav path
Then Downloaded content when downloading file "/test/somefile.txt" with range "bytes=0-6" should be "This is"
And using old dav path
And as "user0" the folder "/test" does not exist
And as "user0" the folder "/test2" exists
And as "user0" the file "/test2/sharedfile.txt" exists
And using received transfer folder of "user1" as dav path
And as "user1" the folder "/test" exists
And as "user1" the folder "/test2" does not exist
And using old dav path
And as "user1" the file "/sharedfile.txt" exists
And As an "user1"
And Getting info of last share
And the OCS status code should be "100"
And Share fields of last share match with
| uid_owner | user0 |
| uid_file_owner | user0 |
| share_with | user1 |

Scenario: transferring ownership of file shares
Given user "user0" exists
And user "user1" exists
Expand Down