Merge pull request #2737 from alecmerdler/data-interface-refactor-api/subscribe
refactor(/endpoints/api/subscribe.py): data interfaces
This commit is contained in:
commit
a1ed482200
4 changed files with 99 additions and 11 deletions
43
endpoints/api/test/test_subscribe_models_pre_oci.py
Normal file
43
endpoints/api/test/test_subscribe_models_pre_oci.py
Normal file
|
@ -0,0 +1,43 @@
|
|||
import pytest
|
||||
from mock import patch
|
||||
|
||||
from endpoints.api.subscribe_models_pre_oci import data_model
|
||||
|
||||
|
||||
@pytest.mark.parametrize('username,repo_count', [
|
||||
('devtable', 3)
|
||||
])
|
||||
def test_get_private_repo_count(username, repo_count):
|
||||
with patch('endpoints.api.subscribe_models_pre_oci.get_private_repo_count') as mock_get_private_reop_count:
|
||||
mock_get_private_reop_count.return_value = repo_count
|
||||
count = data_model.get_private_repo_count(username)
|
||||
|
||||
mock_get_private_reop_count.assert_called_once_with(username)
|
||||
assert count == repo_count
|
||||
|
||||
|
||||
@pytest.mark.parametrize('kind_name,target_username,metadata', [
|
||||
('over_private_usage', 'devtable', {'namespace': 'devtable'})
|
||||
])
|
||||
def test_create_unique_notification(kind_name, target_username, metadata):
|
||||
with patch('endpoints.api.subscribe_models_pre_oci.get_user_or_org') as mock_get_user_or_org:
|
||||
mock_get_user_or_org.return_value = {'username': target_username}
|
||||
with patch('endpoints.api.subscribe_models_pre_oci.create_unique_notification') as mock_create_unique_notification:
|
||||
data_model.create_unique_notification(kind_name, target_username, metadata)
|
||||
|
||||
mock_get_user_or_org.assert_called_once_with(target_username)
|
||||
mock_create_unique_notification.assert_called_once_with(kind_name, mock_get_user_or_org.return_value, metadata)
|
||||
|
||||
|
||||
@pytest.mark.parametrize('target_username,kind_name', [
|
||||
('devtable', 'over_private_usage')
|
||||
])
|
||||
def test_delete_notifications_by_kind(target_username, kind_name):
|
||||
with patch('endpoints.api.subscribe_models_pre_oci.get_user_or_org') as mock_get_user_or_org:
|
||||
mock_get_user_or_org.return_value = {'username': target_username}
|
||||
with patch('endpoints.api.subscribe_models_pre_oci.delete_notifications_by_kind') as mock_delete_notifications_by_kind:
|
||||
data_model.delete_notifications_by_kind(target_username, kind_name)
|
||||
|
||||
mock_get_user_or_org.assert_called_once_with(target_username)
|
||||
mock_delete_notifications_by_kind.assert_called_once_with(mock_get_user_or_org.return_value, kind_name)
|
||||
|
Reference in a new issue