Add integration tests
This commit is contained in:
parent
3571207bd9
commit
b32b296ed7
2 changed files with 47 additions and 0 deletions
|
@ -42,6 +42,7 @@ trait WebDav {
|
||||||
$request->setBody($body);
|
$request->setBody($body);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return $client->send($request);
|
return $client->send($request);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -70,6 +71,23 @@ trait WebDav {
|
||||||
$this->response = $this->makeDavRequest($user, "MOVE", $fileSource, $headers);
|
$this->response = $this->makeDavRequest($user, "MOVE", $fileSource, $headers);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @When /^User "([^"]*)" copies file "([^"]*)" to "([^"]*)"$/
|
||||||
|
* @param string $user
|
||||||
|
* @param string $fileSource
|
||||||
|
* @param string $fileDestination
|
||||||
|
*/
|
||||||
|
public function userCopiesFileTo($user, $fileSource, $fileDestination) {
|
||||||
|
$fullUrl = substr($this->baseUrl, 0, -4) . $this->davPath;
|
||||||
|
$headers['Destination'] = $fullUrl . $fileDestination;
|
||||||
|
try {
|
||||||
|
$this->response = $this->makeDavRequest($user, 'COPY', $fileSource, $headers);
|
||||||
|
} catch (\GuzzleHttp\Exception\ClientException $e) {
|
||||||
|
// 4xx and 5xx responses cause an exception
|
||||||
|
$this->response = $e->getResponse();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @When /^Downloading file "([^"]*)" with range "([^"]*)"$/
|
* @When /^Downloading file "([^"]*)" with range "([^"]*)"$/
|
||||||
* @param string $fileSource
|
* @param string $fileSource
|
||||||
|
|
|
@ -257,3 +257,32 @@ Feature: webdav-related
|
||||||
When Downloading file "/welcome.txt" as "userToBeDisabled"
|
When Downloading file "/welcome.txt" as "userToBeDisabled"
|
||||||
Then the HTTP status code should be "503"
|
Then the HTTP status code should be "503"
|
||||||
|
|
||||||
|
Scenario: Copying files into a folder with edit permissions
|
||||||
|
Given using dav path "remote.php/webdav"
|
||||||
|
And user "user0" exists
|
||||||
|
And user "user1" exists
|
||||||
|
And As an "user1"
|
||||||
|
And user "user1" created a folder "/testcopypermissionsAllowed"
|
||||||
|
And as "user1" creating a share with
|
||||||
|
| path | testcopypermissionsAllowed |
|
||||||
|
| shareType | 0 |
|
||||||
|
| permissions | 31 |
|
||||||
|
| shareWith | user0 |
|
||||||
|
And User "user0" uploads file with content "copytest" to "/copytest.txt"
|
||||||
|
When User "user0" copies file "/copytest.txt" to "/testcopypermissionsAllowed/copytest.txt"
|
||||||
|
Then the HTTP status code should be "201"
|
||||||
|
|
||||||
|
Scenario: Copying files into a folder without edit permissions
|
||||||
|
Given using dav path "remote.php/webdav"
|
||||||
|
And user "user0" exists
|
||||||
|
And user "user1" exists
|
||||||
|
And As an "user1"
|
||||||
|
And user "user1" created a folder "/testcopypermissionsNotAllowed"
|
||||||
|
And as "user1" creating a share with
|
||||||
|
| path | testcopypermissionsNotAllowed |
|
||||||
|
| shareType | 0 |
|
||||||
|
| permissions | 1 |
|
||||||
|
| shareWith | user0 |
|
||||||
|
And User "user0" uploads file with content "copytest" to "/copytest.txt"
|
||||||
|
When User "user0" copies file "/copytest.txt" to "/testcopypermissionsNotAllowed/copytest.txt"
|
||||||
|
Then the HTTP status code should be "403"
|
||||||
|
|
Loading…
Reference in a new issue