diff options
-rw-r--r-- | build/integration/features/bootstrap/FeatureContext.php | 37 | ||||
-rw-r--r-- | build/integration/features/provisioning-v1.feature | 7 |
2 files changed, 44 insertions, 0 deletions
diff --git a/build/integration/features/bootstrap/FeatureContext.php b/build/integration/features/bootstrap/FeatureContext.php index 9676fc8ca40..99d030fa6fc 100644 --- a/build/integration/features/bootstrap/FeatureContext.php +++ b/build/integration/features/bootstrap/FeatureContext.php @@ -59,6 +59,43 @@ class FeatureContext extends BehatContext { } /** + * Parses the xml answer to get the array of users returned. + */ + public function getArrayOfUsersResponded($resp) { + $listCheckedElements = $resp->xml()->data[0]->users[0]->element; + $extractedElementsArray = json_decode( json_encode($listCheckedElements) , 1); + return $extractedElementsArray; + } + + + /** + * Parses the xml answer to get the array of groups returned. + */ + /* + public function getArrayOfGroupsResponded(){ + $listCheckedElements = $this->$response->xml()->data[0]->groups[0]->element; + $extractedElementsArray = json_decode( json_encode($listCheckedElements) , 1); + return $extractedElementsArray; + } + */ + + + + /** + * @Then /^users returned are$/ + * @param \Behat\Gherkin\Node\TableNode|null $formData + */ + public function theUsersShouldBe($usersList) { + if ($usersList instanceof \Behat\Gherkin\Node\TableNode) { + $users = $usersList->getRows()[0]; + $respondedArray = $this->getArrayOfUsersResponded($this->response); + PHPUnit_Framework_Assert::assertEquals($users, $respondedArray); + } + + } + + + /** * @Then /^the OCS status code should be "([^"]*)"$/ */ public function theOCSStatusCodeShouldBe($statusCode) { diff --git a/build/integration/features/provisioning-v1.feature b/build/integration/features/provisioning-v1.feature index 823fd823c5e..448c06b8b51 100644 --- a/build/integration/features/provisioning-v1.feature +++ b/build/integration/features/provisioning-v1.feature @@ -40,6 +40,13 @@ Feature: provisioning And the HTTP status code should be "200" + Scenario: Getting all users + Given As an "admin" + When sending "GET" to "/cloud/users" + And users returned are + | brand-new-user | ser507 | + + Scenario: Edit a user Given As an "admin" And user "brand-new-user" exists |