mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-09-06 01:38:24 -04:00
convert to test fixture
This commit is contained in:
@@ -461,14 +461,7 @@ def test_handle_login_dot_gov_invite_good_email(client_request, mocker):
|
|||||||
mock_user.assert_called_once_with("service", ["manage_everything"], [], "xyz")
|
mock_user.assert_called_once_with("service", ["manage_everything"], [], "xyz")
|
||||||
|
|
||||||
|
|
||||||
# Taken from the API project in service_invite/rest.py
|
def decode_invite_data(state):
|
||||||
def get_user_data_url_safe(data):
|
|
||||||
data = json.dumps(data)
|
|
||||||
data = base64.b64encode(data.encode("utf8"))
|
|
||||||
return data.decode("utf8")
|
|
||||||
|
|
||||||
|
|
||||||
def get_decoded(state):
|
|
||||||
state = state.encode("utf8")
|
state = state.encode("utf8")
|
||||||
state = base64.b64decode(state)
|
state = base64.b64decode(state)
|
||||||
state = json.loads(state)
|
state = json.loads(state)
|
||||||
@@ -477,12 +470,11 @@ def get_decoded(state):
|
|||||||
|
|
||||||
# Test that we can successfully decode the invited user
|
# Test that we can successfully decode the invited user
|
||||||
# data that is sent in the state param
|
# data that is sent in the state param
|
||||||
def test_decode_state():
|
def test_decode_state(encoded_invite_data):
|
||||||
invite_data = {
|
assert decode_invite_data(encoded_invite_data) == {
|
||||||
"from_user_id": "abc",
|
|
||||||
"service_id": "bcd",
|
|
||||||
"permissions": ["manage_everything"],
|
|
||||||
"folder_permissions": [],
|
"folder_permissions": [],
|
||||||
|
"from_user_id": "xyz",
|
||||||
|
"invited_user_id": "invited_user",
|
||||||
|
"permissions": ["manage_everything"],
|
||||||
|
"service_id": "service",
|
||||||
}
|
}
|
||||||
state = get_user_data_url_safe(invite_data)
|
|
||||||
assert invite_data == get_decoded(state)
|
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
import base64
|
||||||
import copy
|
import copy
|
||||||
import json
|
import json
|
||||||
import os
|
import os
|
||||||
@@ -1901,6 +1902,25 @@ def sample_invite(mocker, service_one):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.fixture()
|
||||||
|
def encoded_invite_data():
|
||||||
|
"""
|
||||||
|
This mimics what API does when it encodes invite data in
|
||||||
|
service_invite/rest.py
|
||||||
|
"""
|
||||||
|
invite_data = {
|
||||||
|
"service_id": "service",
|
||||||
|
"invited_user_id": "invited_user",
|
||||||
|
"permissions": ["manage_everything"],
|
||||||
|
"folder_permissions": [],
|
||||||
|
"from_user_id": "xyz",
|
||||||
|
}
|
||||||
|
invite_data = json.dumps(invite_data)
|
||||||
|
invite_data = invite_data.encode("utf8")
|
||||||
|
invite_data = base64.b64encode(invite_data)
|
||||||
|
return invite_data.decode("utf8")
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture()
|
@pytest.fixture()
|
||||||
def expired_invite(service_one):
|
def expired_invite(service_one):
|
||||||
id_ = USER_ONE_ID
|
id_ = USER_ONE_ID
|
||||||
|
|||||||
Reference in New Issue
Block a user