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());
|
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*/
|
/*Returns the elements of a propfind, $folderDepth requires 1 to see elements without children*/
|
||||||
public function listFolder($user, $path, $folderDepth){
|
public function listFolder($user, $path, $folderDepth){
|
||||||
$fullUrl = substr($this->baseUrl, 0, -4);
|
$fullUrl = substr($this->baseUrl, 0, -4);
|
||||||
|
@ -126,7 +135,7 @@ trait WebDav{
|
||||||
* @param \Behat\Gherkin\Node\TableNode|null $expectedElements
|
* @param \Behat\Gherkin\Node\TableNode|null $expectedElements
|
||||||
*/
|
*/
|
||||||
public function checkElementList($user, $expectedElements){
|
public function checkElementList($user, $expectedElements){
|
||||||
$elementList = $this->listFolder($user, '/', 2);
|
$elementList = $this->listFolder($user, '/', 3);
|
||||||
if ($expectedElements instanceof \Behat\Gherkin\Node\TableNode) {
|
if ($expectedElements instanceof \Behat\Gherkin\Node\TableNode) {
|
||||||
$elementRows = $expectedElements->getRows();
|
$elementRows = $expectedElements->getRows();
|
||||||
$elementsSimplified = $this->simplifyArray($elementRows);
|
$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 |
|
| /CHILD/child.txt |
|
||||||
And the HTTP status code should be "200"
|
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
|
Scenario: Delete all group shares
|
||||||
Given As an "admin"
|
Given As an "admin"
|
||||||
And user "user0" exists
|
And user "user0" exists
|
||||||
|
|
Loading…
Reference in New Issue