Merge pull request #20893 from owncloud/test_sharing_file_by_multiple_channels
Added shared by multiple channels test
This commit is contained in:
commit
6ca9444b49
|
@ -97,6 +97,15 @@ trait WebDav{
|
|||
PHPUnit_Framework_Assert::assertEquals($content, (string)$this->response->getBody());
|
||||
}
|
||||
|
||||
/**
|
||||
* @Then /^Downloaded content when downloading file "([^"]*)" with range "([^"]*)" should be "([^"]*)"$/
|
||||
*/
|
||||
public function downloadedContentWhenDownloadindShouldBe($fileSource, $range, $content){
|
||||
$this->downloadFileWithRange($fileSource, $range);
|
||||
$this->downloadedContentShouldBe($content);
|
||||
}
|
||||
|
||||
|
||||
/*Returns the elements of a propfind, $folderDepth requires 1 to see elements without children*/
|
||||
public function listFolder($user, $path, $folderDepth){
|
||||
$fullUrl = substr($this->baseUrl, 0, -4);
|
||||
|
@ -126,7 +135,7 @@ trait WebDav{
|
|||
* @param \Behat\Gherkin\Node\TableNode|null $expectedElements
|
||||
*/
|
||||
public function checkElementList($user, $expectedElements){
|
||||
$elementList = $this->listFolder($user, '/', 2);
|
||||
$elementList = $this->listFolder($user, '/', 3);
|
||||
if ($expectedElements instanceof \Behat\Gherkin\Node\TableNode) {
|
||||
$elementRows = $expectedElements->getRows();
|
||||
$elementsSimplified = $this->simplifyArray($elementRows);
|
||||
|
@ -153,5 +162,17 @@ trait WebDav{
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @Given User :user created a folder :destination
|
||||
*/
|
||||
public function userCreatedAFolder($user, $destination){
|
||||
try {
|
||||
$this->response = $this->makeDavRequest($user, "MKCOL", $destination, []);
|
||||
} catch (\GuzzleHttp\Exception\ServerException $e) {
|
||||
// 4xx and 5xx responses cause an exception
|
||||
$this->response = $e->getResponse();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -379,6 +379,47 @@ Feature: sharing
|
|||
| /CHILD/child.txt |
|
||||
And the HTTP status code should be "200"
|
||||
|
||||
Scenario: Share a file by multiple channels
|
||||
Given As an "admin"
|
||||
And user "user0" exists
|
||||
And user "user1" exists
|
||||
And user "user2" exists
|
||||
And group "group0" exists
|
||||
And user "user1" belongs to group "group0"
|
||||
And user "user2" belongs to group "group0"
|
||||
And user "user0" created a folder "/common"
|
||||
And user "user0" created a folder "/common/sub"
|
||||
And file "common" of user "user0" is shared with group "group0"
|
||||
And file "textfile0.txt" of user "user1" is shared with user "user2"
|
||||
And User "user1" moved file "/textfile0.txt" to "/common/textfile0.txt"
|
||||
And User "user1" moved file "/common/textfile0.txt" to "/common/sub/textfile0.txt"
|
||||
And As an "user2"
|
||||
When Downloading file "/common/sub/textfile0.txt" with range "bytes=9-17"
|
||||
Then Downloaded content should be "test text"
|
||||
And Downloaded content when downloading file "/textfile0.txt" with range "bytes=9-17" should be "test text"
|
||||
And user "user2" should see following elements
|
||||
| /common/sub/textfile0.txt |
|
||||
|
||||
Scenario: Share a file by multiple channels
|
||||
Given As an "admin"
|
||||
And user "user0" exists
|
||||
And user "user1" exists
|
||||
And user "user2" exists
|
||||
And group "group0" exists
|
||||
And user "user1" belongs to group "group0"
|
||||
And user "user2" belongs to group "group0"
|
||||
And user "user0" created a folder "/common"
|
||||
And user "user0" created a folder "/common/sub"
|
||||
And file "common" of user "user0" is shared with group "group0"
|
||||
And file "textfile0.txt" of user "user1" is shared with user "user2"
|
||||
And User "user1" moved file "/textfile0.txt" to "/common/textfile0.txt"
|
||||
And User "user1" moved file "/common/textfile0.txt" to "/common/sub/textfile0.txt"
|
||||
And As an "user2"
|
||||
When Downloading file "/textfile0.txt" with range "bytes=9-17"
|
||||
Then Downloaded content should be "test text"
|
||||
And user "user2" should see following elements
|
||||
| /common/sub/textfile0.txt |
|
||||
|
||||
Scenario: Delete all group shares
|
||||
Given As an "admin"
|
||||
And user "user0" exists
|
||||
|
|
Loading…
Reference in New Issue