示例#1
0
    def setUp(self, mock_get_proxy_client: MagicMock) -> None:
        self.app = create_app(config_module_class='metadata_service.config.LocalConfig')
        self.app_context = self.app.app_context()
        self.app_context.push()

        self.mock_client = mock.Mock()
        mock_get_proxy_client.return_value = self.mock_client
        self.api = UserDetailAPI()
示例#2
0
class UserDetailAPITest(unittest.TestCase):
    @mock.patch('metadata_service.api.user.get_proxy_client')
    def setUp(self, mock_get_proxy_client: MagicMock) -> None:
        self.app = create_app(
            config_module_class='metadata_service.config.LocalConfig')
        self.app_context = self.app.app_context()
        self.app_context.push()

        self.mock_client = mock.Mock()
        mock_get_proxy_client.return_value = self.mock_client
        self.api = UserDetailAPI()

    def test_get(self) -> None:
        self.mock_client.get_user.return_value = {}
        response = self.api.get(id='username')
        self.assertEqual(list(response)[1], HTTPStatus.OK)
        self.mock_client.get_user.assert_called_once_with(id='username')

    def test_gets(self) -> None:
        self.mock_client.get_users.return_value = []
        response = self.api.get()
        self.assertEqual(list(response)[1], HTTPStatus.OK)
        self.mock_client.get_users.assert_called_once()

    def test_put(self) -> None:
        m = MagicMock()
        m.data = json.dumps({'email': '*****@*****.**'})
        with mock.patch("metadata_service.api.user.request", m):
            # Test user creation
            create_email = {'email': 'test_email'}
            self.mock_client.create_update_user.return_value = create_email, True
            test_user, test_user_created = self.api.put()
            self.assertEqual(test_user, json.dumps(create_email))
            self.assertEqual(test_user_created, HTTPStatus.CREATED)

            # Test user update
            update_email = {'email': '*****@*****.**'}
            self.mock_client.create_update_user.return_value = update_email, False
            test_user2, test_user_updated = self.api.put()
            self.assertEqual(test_user2, json.dumps(update_email))
            self.assertEqual(test_user_updated, HTTPStatus.OK)

    def test_put_no_inputs(self) -> None:
        # Test no data provided
        m2 = MagicMock()
        m2.data = {}
        with mock.patch("metadata_service.api.user.request", m2):
            _, status_code = self.api.put()
            self.assertEquals(status_code, HTTPStatus.BAD_REQUEST)
示例#3
0
class UserDetailAPITest(unittest.TestCase):
    @mock.patch('metadata_service.api.user.get_proxy_client')
    def setUp(self, mock_get_proxy_client: MagicMock) -> None:
        self.mock_client = mock.Mock()
        mock_get_proxy_client.return_value = self.mock_client
        self.api = UserDetailAPI()

    def test_get(self) -> None:
        self.mock_client.get_user.return_value = {}
        response = self.api.get(id='username')
        self.assertEqual(list(response)[1], HTTPStatus.OK)
        self.mock_client.get_user.assert_called_once()

    def test_gets(self) -> None:
        self.mock_client.get_users.return_value = []
        response = self.api.get()
        self.assertEqual(list(response)[1], HTTPStatus.OK)
        self.mock_client.get_users.assert_called_once()
示例#4
0
class UserDetailAPITest(unittest.TestCase):
    @mock.patch('metadata_service.api.user.get_proxy_client')
    def setUp(self, mock_get_proxy_client: MagicMock) -> None:
        self.app = create_app(config_module_class='metadata_service.config.LocalConfig')
        self.app_context = self.app.app_context()
        self.app_context.push()

        self.mock_client = mock.Mock()
        mock_get_proxy_client.return_value = self.mock_client
        self.api = UserDetailAPI()

    def test_get(self) -> None:
        self.mock_client.get_user.return_value = {}
        response = self.api.get(id='username')
        self.assertEqual(list(response)[1], HTTPStatus.OK)
        self.mock_client.get_user.assert_called_once_with(id='username')

    def test_gets(self) -> None:
        self.mock_client.get_users.return_value = []
        response = self.api.get()
        self.assertEqual(list(response)[1], HTTPStatus.OK)
        self.mock_client.get_users.assert_called_once()
示例#5
0
 def setUp(self, mock_get_proxy_client: MagicMock) -> None:
     self.mock_client = mock.Mock()
     mock_get_proxy_client.return_value = self.mock_client
     self.api = UserDetailAPI()