mirror of
https://github.com/opencloud-eu/opencloud.git
synced 2025-12-31 17:30:29 -06:00
* Added graph API test for getting all groups along with its members Signed-off-by: sagargurung1001@gmail.com <sagargurung1001@gmail.com> * Refactor implementation code Signed-off-by: sagargurung1001@gmail.com <sagargurung1001@gmail.com> * PR address Signed-off-by: sagargurung1001@gmail.com <sagargurung1001@gmail.com> * Update the local api expected to failure * Review Address --------- Signed-off-by: sagargurung1001@gmail.com <sagargurung1001@gmail.com>
108 lines
5.0 KiB
Gherkin
108 lines
5.0 KiB
Gherkin
@api @skipOnOcV10
|
|
Feature: get groups and their members
|
|
As an admin
|
|
I want to be able to get groups
|
|
So that I can see all the groups and their members
|
|
|
|
Background:
|
|
Given user "Alice" has been created with default attributes and without skeleton files
|
|
And the administrator has given "Alice" the role "Admin" using the settings api
|
|
|
|
|
|
Scenario: admin user lists all the groups
|
|
Given group "tea-lover" has been created
|
|
And group "coffee-lover" has been created
|
|
And group "h2o-lover" has been created
|
|
When user "Alice" gets all the groups using the Graph API
|
|
Then the HTTP status code should be "200"
|
|
And the extra groups returned by the API should be
|
|
| tea-lover |
|
|
| coffee-lover |
|
|
| h2o-lover |
|
|
|
|
|
|
Scenario: normal user cannot get the groups list
|
|
Given user "Brian" has been created with default attributes and without skeleton files
|
|
And group "tea-lover" has been created
|
|
And group "coffee-lover" has been created
|
|
And group "h2o-lover" has been created
|
|
When user "Brian" gets all the groups using the Graph API
|
|
Then the HTTP status code should be "401"
|
|
And the last response should be an unauthorized response
|
|
|
|
|
|
Scenario: admin user gets users of a group
|
|
Given these users have been created with default attributes and without skeleton files:
|
|
| username |
|
|
| Brian |
|
|
| Carol |
|
|
And group "tea-lover" has been created
|
|
And user "Brian" has been added to group "tea-lover"
|
|
And user "Carol" has been added to group "tea-lover"
|
|
When user "Alice" gets all the members of group "tea-lover" using the Graph API
|
|
Then the HTTP status code should be "200"
|
|
And the users returned by the API should be
|
|
| Brian |
|
|
| Carol |
|
|
|
|
|
|
Scenario: normal user tries to get users of a group
|
|
Given user "Brian" has been created with default attributes and without skeleton files
|
|
And group "tea-lover" has been created
|
|
When user "Brian" gets all the members of group "tea-lover" using the Graph API
|
|
Then the HTTP status code should be "401"
|
|
And the last response should be an unauthorized response
|
|
|
|
|
|
Scenario: admin user gets all groups along with its member's information
|
|
Given these users have been created with default attributes and without skeleton files:
|
|
| username |
|
|
| Brian |
|
|
| Carol |
|
|
And group "tea-lover" has been created
|
|
And group "coffee-lover" has been created
|
|
And user "Alice" has been added to group "tea-lover"
|
|
And user "Brian" has been added to group "coffee-lover"
|
|
And user "Carol" has been added to group "tea-lover"
|
|
When user "Alice" retrieves all groups along with their members using the Graph API
|
|
Then the HTTP status code should be "200"
|
|
And the group 'coffee-lover' should have the following member information
|
|
| displayName | id | mail | onPremisesSamAccountName |
|
|
| Brian Murphy | %uuid_v4% | brian@example.org | Brian |
|
|
And the group 'tea-lover' should have the following member information
|
|
| displayName | id | mail | onPremisesSamAccountName |
|
|
| Alice Hansen | %uuid_v4% | alice@example.org | Alice |
|
|
| Carol King | %uuid_v4% | carol@example.org | Carol |
|
|
|
|
|
|
Scenario: normal user gets all groups along with their members information
|
|
Given user "Brian" has been created with default attributes and without skeleton files
|
|
And group "tea-lover" has been created
|
|
And group "coffee-lover" has been created
|
|
And user "Alice" has been added to group "tea-lover"
|
|
And user "Brian" has been added to group "coffee-lover"
|
|
When user "Brian" retrieves all groups along with their members using the Graph API
|
|
Then the HTTP status code should be "401"
|
|
And the last response should be an unauthorized response
|
|
|
|
|
|
Scenario: admin user gets a group along with their members information
|
|
Given user "Brian" has been created with default attributes and without skeleton files
|
|
And group "tea-lover" has been created
|
|
And user "Alice" has been added to group "tea-lover"
|
|
And user "Brian" has been added to group "tea-lover"
|
|
When user "Alice" gets all the members information of group "tea-lover" using the Graph API
|
|
And the group 'tea-lover' should have the following member information
|
|
| displayName | id | mail | onPremisesSamAccountName |
|
|
| Alice Hansen | %uuid_v4% | alice@example.org | Alice |
|
|
| Brian Murphy | %uuid_v4% | brian@example.org | Brian |
|
|
|
|
Scenario: normal user gets a group along with their members information
|
|
Given user "Brian" has been created with default attributes and without skeleton files
|
|
And group "tea-lover" has been created
|
|
And user "Alice" has been added to group "tea-lover"
|
|
And user "Brian" has been added to group "tea-lover"
|
|
When user "Brian" gets all the members information of group "tea-lover" using the Graph API
|
|
Then the HTTP status code should be "401"
|
|
And the last response should be an unauthorized response
|