Add tests for getting own user accounts.
This commit is contained in:
parent
b2f115498b
commit
103d11b654
|
@ -73,13 +73,20 @@ def create_new_user_response(user_role, jwt_token, api_base_uri):
|
|||
)
|
||||
|
||||
|
||||
@bdd.given(parsers.parse('I get an {user_role} user'), target_fixture='user_response')
|
||||
@bdd.given(parsers.parse('I get a {user_role} user'), target_fixture='user_response')
|
||||
def get_existing_user_response(user_role, jwt_token, api_base_uri, db_engine):
|
||||
def parse_self_other(text):
|
||||
return text.lower() == 'my'
|
||||
|
||||
existing_user = USER_TEMPLATES['target_data']['non-existent']
|
||||
if not user_role == 'non-existent':
|
||||
|
||||
@bdd.given(parsers.parse('I get {self_classifier:self_other} {user_role} user', {'self_other': parse_self_other}),
|
||||
target_fixture='user_response')
|
||||
def get_user_response(self_classifier, user_role, jwt_token, api_base_uri, db_engine):
|
||||
|
||||
if self_classifier:
|
||||
existing_user = create_user_in_db(db_engine, USER_TEMPLATES['requester'][user_role])
|
||||
elif not self_classifier and not user_role == 'non-existent':
|
||||
existing_user = create_user_in_db(db_engine, USER_TEMPLATES['target_data'][user_role])
|
||||
else:
|
||||
existing_user = USER_TEMPLATES['target_data']['non-existent']
|
||||
|
||||
return requests.get(
|
||||
url=f'{api_base_uri}/api/users/{existing_user["username"]}',
|
||||
|
@ -98,14 +105,17 @@ def assert_create_user_response(user_role, create_user_response):
|
|||
assert create_user_response.json() == expected_user_creation_response
|
||||
|
||||
|
||||
@bdd.then(parsers.parse('I can get an {user_role} user profile'))
|
||||
@bdd.then(parsers.parse('I can get a {user_role} user profile'))
|
||||
def assert_user_profile(user_role, user_response, db_engine):
|
||||
@bdd.then(parsers.parse('I can get {self_classifier:self_other} {user_role} user profile',
|
||||
{'self_other': parse_self_other}))
|
||||
def assert_user_profile(self_classifier, user_role, user_response, db_engine):
|
||||
|
||||
# TODO: Add in actual user profiles...
|
||||
existing_user = USER_TEMPLATES['target_data']['non-existent']
|
||||
if not user_role == 'non-existent':
|
||||
if self_classifier:
|
||||
existing_user = create_user_in_db(db_engine, USER_TEMPLATES['requester'][user_role])
|
||||
elif not self_classifier and not user_role == 'non-existent':
|
||||
existing_user = create_user_in_db(db_engine, USER_TEMPLATES['target_data'][user_role])
|
||||
else:
|
||||
existing_user = USER_TEMPLATES['target_data']['non-existent']
|
||||
|
||||
assert user_response.status_code == http.HTTPStatus.OK
|
||||
expected_user_creation_response = existing_user
|
||||
|
|
|
@ -45,6 +45,11 @@ Scenario: Admin user can get an existing editor user
|
|||
And I get an editor user
|
||||
Then I can get an editor user profile
|
||||
|
||||
Scenario: Admin user can get own profile
|
||||
Given I am an admin user
|
||||
And I get my admin user
|
||||
Then I can get my admin user profile
|
||||
|
||||
Scenario: Admin user can not get an non-existent user
|
||||
Given I am an admin user
|
||||
And I get an non-existent user
|
||||
|
@ -59,11 +64,11 @@ Scenario: Editor user can not get an existing editor user that is not me
|
|||
Given I am an editor user
|
||||
And I get an editor user
|
||||
Then I get an unauthorized response
|
||||
#
|
||||
#Scenario: Editor user can get my own profile
|
||||
# Given I am an editor user
|
||||
# And I get myself
|
||||
# Then I can get my own user profile
|
||||
|
||||
Scenario: Editor user can get own profile
|
||||
Given I am an editor user
|
||||
And I get my editor user
|
||||
Then I can get my editor user profile
|
||||
|
||||
Scenario: Subscriber user can not get an existing admin user
|
||||
Given I am a subscriber user
|
||||
|
@ -80,10 +85,11 @@ Scenario: Subscriber user can not get an subscriber user that is not me
|
|||
And I get an subscriber user
|
||||
Then I get an unauthorized response
|
||||
|
||||
#Scenario: Subscriber user can get my own profile
|
||||
# Given I am a subscriber user
|
||||
# And I get myself
|
||||
# Then I can get my own user profile
|
||||
Scenario: Subscriber user can get own profile
|
||||
Given I am a subscriber user
|
||||
And I get my subscriber user
|
||||
Then I can get my subscriber user profile
|
||||
|
||||
#
|
||||
#Scenario: Admin user can modify an admin user
|
||||
# Given I am an admin user
|
||||
|
|
Loading…
Reference in New Issue