Added tests for specifying custom display name during group creation.

Signed-off-by: Dries Mys <dries.mys@my-dreams.be>
This commit is contained in:
Dries Mys 2021-06-01 01:13:40 +02:00
parent 7a8e4c504b
commit 899a152708
2 changed files with 49 additions and 0 deletions

View File

@ -177,6 +177,38 @@ trait Provisioning {
}
}
/**
* @Then /^group "([^"]*)" has$/
*
* @param string $user
* @param \Behat\Gherkin\Node\TableNode|null $settings
*/
public function groupHasSetting($group, $settings) {
$fullUrl = $this->baseUrl . "v{$this->apiVersion}.php/cloud/groups/details?search=$group";
$client = new Client();
$options = [];
if ($this->currentUser === 'admin') {
$options['auth'] = $this->adminUser;
} else {
$options['auth'] = [$this->currentUser, $this->regularUser];
}
$options['headers'] = [
'OCS-APIREQUEST' => 'true',
];
$response = $client->get($fullUrl, $options);
$groupDetails = simplexml_load_string($response->getBody())->data[0]->groups[0]->element;
foreach ($settings->getRows() as $setting) {
$value = json_decode(json_encode($groupDetails->{$setting[0]}), 1);
if (isset($value[0])) {
Assert::assertEquals($setting[1], $value[0], "", 0.0, 10, true);
} else {
Assert::assertEquals('', $setting[1]);
}
}
}
/**
* @Then /^search users by phone for region "([^"]*)" with$/
*

View File

@ -205,6 +205,21 @@ Feature: provisioning
Then the OCS status code should be "100"
And the HTTP status code should be "200"
And group "new-group" exists
And group "new-group" has
| displayname | new-group |
Scenario: Create a group with custom display name
Given As an "admin"
And group "new-group" does not exist
When sending "POST" to "/cloud/groups" with
| groupid | new-group |
| password | 123456 |
| displayname | new-group-displayname |
Then the OCS status code should be "100"
And the HTTP status code should be "200"
And group "new-group" exists
And group "new-group" has
| displayname | new-group-displayname |
Scenario: Create a group with special characters
Given As an "admin"
@ -215,6 +230,8 @@ Feature: provisioning
Then the OCS status code should be "100"
And the HTTP status code should be "200"
And group "España" exists
And group "España" has
| displayname | España |
Scenario: adding user to a group without sending the group
Given As an "admin"