Unverified Commit 586f5608 authored by Sergio Bertolín's avatar Sergio Bertolín Committed by Vincent Petry
Browse files

Orphaned shares test and some requirements

parent 6c6a40cd
......@@ -145,6 +145,27 @@ trait BasicStructure {
}
}
public function sendingToWithDirectUrl($verb, $url, $body) {
$fullUrl = substr($this->baseUrl, 0, -5) . $url;
$client = new Client();
$options = [];
if ($this->currentUser === 'admin') {
$options['auth'] = $this->adminUser;
} else {
$options['auth'] = [$this->currentUser, $this->regularUser];
}
if ($body instanceof \Behat\Gherkin\Node\TableNode) {
$fd = $body->getRowsHash();
$options['body'] = $fd;
}
try {
$this->response = $client->send($client->createRequest($verb, $fullUrl, $options));
} catch (\GuzzleHttp\Exception\ClientException $ex) {
$this->response = $ex->getResponse();
}
}
public function isExpectedUrl($possibleUrl, $finalPart){
$baseUrlChopped = substr($this->baseUrl, 0, -4);
$endCharacter = strlen($baseUrlChopped) + strlen($finalPart);
......@@ -271,6 +292,16 @@ trait BasicStructure {
file_put_contents("../../data/$user/files" . "$filename", "$text");
}
/**
* @When User :user empties trashbin
* @param string $user
*/
public function emptyTrashbin($user) {
$body = new \Behat\Gherkin\Node\TableNode([['allfiles', 'true'], ['dir', '%2F']]);
$this->sendingToWithDirectUrl('POST', "/index.php/apps/files_trashbin/ajax/delete.php", $body);
$this->theHTTPStatusCodeShouldBe('200');
}
/**
* @BeforeSuite
*/
......
......@@ -415,7 +415,7 @@ trait WebDav {
}
/**
* @When User :user deletes file :file
* @When User :user deletes (file|folder) :file
* @param string $user
* @param string $file
*/
......
......@@ -868,3 +868,21 @@ Feature: sharing
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: Empting trashbin
Given As an "admin"
And user "user0" exists
And User "user0" deletes file "/textfile0.txt"
When User "user0" empties trashbin
Then the HTTP status code should be "200"
Scenario: orphaned shares
Given As an "admin"
And user "user0" exists
And user "user1" exists
And user "user0" created a folder "/common"
And user "user0" created a folder "/common/sub"
And file "/common/sub" of user "user0" is shared with user "user1"
And User "user0" deletes folder "/common"
When User "user0" empties trashbin
Then as "user1" the folder "sub" does not exist
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment