def test_get_single_role(self, mock_f, mock_resp): """ Test single role retrieval. """ resp = { 'id': 'test_role', 'users': [{ 'login': '******' }], 'permissions': [{ 'resource': '/', 'permission': [0] }] } users = [{'login': '******'}] mock_f.role_query_manager.return_value.find_by_id.return_value = resp mock_f.user_query_manager.return_value.find_users_belonging_to_role.return_value = users mock_f.permission_manager.return_value.operation_value_to_name.return_value = 'READ' request = mock.MagicMock() role = RoleResourceView() response = role.get(request, 'test_role') expected_cont = { 'id': 'test_role', 'permissions': { '/': ['READ'] }, 'users': ['test'], '_href': '/v2/roles/test_role/' } mock_resp.assert_called_once_with(expected_cont) self.assertTrue(response is mock_resp.return_value)
def test_get_nonexistent_role(self, mock_factory): """ Test invalid role retrieval. """ mock_factory.role_query_manager.return_value.find_by_id.return_value = None request = mock.MagicMock() role = RoleResourceView() try: response = role.get(request, 'nonexistent_id') except MissingResource, response: pass
def test_get_nonexistent_role(self, mock_factory): """ Test invalid role retrieval. """ mock_factory.role_query_manager.return_value.find_by_id.return_value = None request = mock.MagicMock() role = RoleResourceView() try: response = role.get(request, 'nonexistent_id') except MissingResource, response: pass
def test_get_single_role(self, mock_ctrl, mock_f, mock_resp): """ Test single role retrieval. """ resp = {'id': 'test_role', 'users': [{'login': '******'}], 'permissions': [{'resource': '/', 'permission': [0]}]} user = mock.MagicMock() mock_f.role_query_manager.return_value.find_by_id.return_value = resp mock_ctrl.find_users_belonging_to_role.return_value = [user] mock_f.permission_manager.return_value.operation_value_to_name.return_value = 'READ' request = mock.MagicMock() role = RoleResourceView() response = role.get(request, 'test_role') expected_cont = {'id': 'test_role', 'permissions': {'/': ['READ']}, 'users': [user.login], '_href': '/v2/roles/test_role/'} mock_resp.assert_called_once_with(expected_cont) self.assertTrue(response is mock_resp.return_value)