summaryrefslogtreecommitdiffstats
path: root/build/integration/features/bootstrap/Provisioning.php
diff options
context:
space:
mode:
Diffstat (limited to 'build/integration/features/bootstrap/Provisioning.php')
-rw-r--r--build/integration/features/bootstrap/Provisioning.php26
1 files changed, 26 insertions, 0 deletions
diff --git a/build/integration/features/bootstrap/Provisioning.php b/build/integration/features/bootstrap/Provisioning.php
index 2e17508120c..94da63a653f 100644
--- a/build/integration/features/bootstrap/Provisioning.php
+++ b/build/integration/features/bootstrap/Provisioning.php
@@ -121,6 +121,32 @@ trait Provisioning {
$client->send($client->createRequest('GET', $url, $options2));
}
+ /**
+ * @Then /^user "([^"]*)" has$/
+ *
+ * @param string $user
+ * @param \Behat\Gherkin\Node\TableNode|null $settings
+ */
+ public function userHasSetting($user, $settings) {
+ $fullUrl = $this->baseUrl . "v{$this->apiVersion}.php/cloud/users/$user";
+ $client = new Client();
+ $options = [];
+ $options['auth'] = $this->adminUser;
+ $options['headers'] = [
+ 'OCS-APIREQUEST' => 'true',
+ ];
+
+ $response = $client->send($client->createRequest("GET", $fullUrl, $options));
+ foreach ($settings->getRows() as $setting) {
+ $value = json_decode(json_encode($response->xml()->data->{$setting[0]}), 1);
+ if (isset($value[0])) {
+ PHPUnit_Framework_Assert::assertEquals($setting[1], $value[0], "", 0.0, 10, true);
+ } else {
+ PHPUnit_Framework_Assert::assertEquals('', $setting[1]);
+ }
+ }
+ }
+
public function createUser($user) {
$previous_user = $this->currentUser;
$this->currentUser = "admin";