Merge pull request #20907 from owncloud/integration_tests_for_capabilities
Added capabilities context and tests
This commit is contained in:
commit
7d99289ced
|
@ -0,0 +1,31 @@
|
||||||
|
Feature: capabilities
|
||||||
|
Background:
|
||||||
|
Given using api version "1"
|
||||||
|
|
||||||
|
Scenario: getting capabilities with admin user
|
||||||
|
Given As an "admin"
|
||||||
|
When sending "GET" to "/cloud/capabilities"
|
||||||
|
Then the HTTP status code should be "200"
|
||||||
|
And fields of capabilities match with
|
||||||
|
| capability | feature | value_or_subfeature | value |
|
||||||
|
| core | pollinterval | 60 | |
|
||||||
|
| core | webdav-root | remote.php/webdav | |
|
||||||
|
| files_sharing | api_enabled | 1 | |
|
||||||
|
| files_sharing | public | enabled | 1 |
|
||||||
|
| files_sharing | public | upload | 1 |
|
||||||
|
| files_sharing | resharing | 1 | |
|
||||||
|
| files_sharing | federation | outgoing | 1 |
|
||||||
|
| files_sharing | federation | incoming | 1 |
|
||||||
|
| files | bigfilechunking | 1 | |
|
||||||
|
| files | undelete | 1 | |
|
||||||
|
| files | versioning | 1 | |
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,7 @@ default:
|
||||||
regular_user_password: 123456
|
regular_user_password: 123456
|
||||||
federation:
|
federation:
|
||||||
paths:
|
paths:
|
||||||
- %paths.base%/../federation
|
- %paths.base%/../federation_features
|
||||||
contexts:
|
contexts:
|
||||||
- FederationContext:
|
- FederationContext:
|
||||||
baseUrl: http://localhost:8080/ocs/
|
baseUrl: http://localhost:8080/ocs/
|
||||||
|
@ -22,6 +22,17 @@ default:
|
||||||
- admin
|
- admin
|
||||||
- admin
|
- admin
|
||||||
regular_user_password: 123456
|
regular_user_password: 123456
|
||||||
|
capabilities:
|
||||||
|
paths:
|
||||||
|
- %paths.base%/../capabilities_features
|
||||||
|
contexts:
|
||||||
|
- CapabilitiesContext:
|
||||||
|
baseUrl: http://localhost:8080/ocs/
|
||||||
|
admin:
|
||||||
|
- admin
|
||||||
|
- admin
|
||||||
|
regular_user_password: 123456
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
extensions:
|
extensions:
|
||||||
|
|
|
@ -0,0 +1,49 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
use Behat\Behat\Context\Context;
|
||||||
|
use Behat\Behat\Context\SnippetAcceptingContext;
|
||||||
|
use GuzzleHttp\Client;
|
||||||
|
use GuzzleHttp\Message\ResponseInterface;
|
||||||
|
|
||||||
|
require __DIR__ . '/../../vendor/autoload.php';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Capabilities context.
|
||||||
|
*/
|
||||||
|
class CapabilitiesContext implements Context, SnippetAcceptingContext {
|
||||||
|
|
||||||
|
use BasicStructure;
|
||||||
|
use Provisioning;
|
||||||
|
use Sharing;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Then /^fields of capabilities match with$/
|
||||||
|
* @param \Behat\Gherkin\Node\TableNode|null $formData
|
||||||
|
*/
|
||||||
|
public function checkCapabilitiesResponse($formData){
|
||||||
|
if ($formData instanceof \Behat\Gherkin\Node\TableNode) {
|
||||||
|
$fd = $formData->getHash();
|
||||||
|
}
|
||||||
|
|
||||||
|
$capabilitiesXML = $this->response->xml()->data->capabilities;
|
||||||
|
|
||||||
|
foreach ($fd as $row) {
|
||||||
|
if ($row['value'] === ''){
|
||||||
|
$answeredValue = (string)$capabilitiesXML->$row['capability']->$row['feature'];
|
||||||
|
PHPUnit_Framework_Assert::assertEquals(
|
||||||
|
$answeredValue,
|
||||||
|
$row['value_or_subfeature'],
|
||||||
|
"Failed field " . $row['capability'] . " " . $row['feature']
|
||||||
|
);
|
||||||
|
} else{
|
||||||
|
$answeredValue = (string)$capabilitiesXML->$row['capability']->$row['feature']->$row['value_or_subfeature'];
|
||||||
|
PHPUnit_Framework_Assert::assertEquals(
|
||||||
|
$answeredValue,
|
||||||
|
$row['value'],
|
||||||
|
"Failed field: " . $row['capability'] . " " . $row['feature'] . " " . $row['value_or_subfeature']
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue