Esempio n. 1
0
class TestDataverseSerializerConfig(DataverseAddonTestCase):

    def setUp(self):
        super(TestDataverseSerializerConfig, self).setUp()

        self.provider = DataverseProvider()

    def test_default(self):
        assert_is_none(self.provider.account)

    @mock.patch('website.addons.dataverse.client._connect')
    def test_add_user_auth(self, mock_connect):
        mock_connect.return_value = create_mock_connection()

        external_account = create_external_account()
        self.user.external_accounts.append(external_account)
        self.user.save()

        self.provider.add_user_auth(
            self.node_settings,
            self.user,
            external_account._id,
        )

        assert_equal(self.node_settings.external_account, external_account)
        assert_equal(self.node_settings.user_settings, self.user_settings)

    def test_add_user_auth_not_in_user_external_accounts(self):
        external_account = create_external_account()

        with assert_raises(HTTPError) as e:
            self.provider.add_user_auth(
                self.node_settings,
                self.user,
                external_account._id,
            )
            assert_equal(e.status_code, http.FORBIDDEN)
Esempio n. 2
0
class TestDataverseSerializerConfig(DataverseAddonTestCase):
    def setUp(self):
        super(TestDataverseSerializerConfig, self).setUp()

        self.provider = DataverseProvider()

    def test_default(self):
        assert_is_none(self.provider.account)

    @mock.patch('website.addons.dataverse.client._connect')
    def test_add_user_auth(self, mock_connect):
        mock_connect.return_value = create_mock_connection()

        external_account = create_external_account()
        self.user.external_accounts.append(external_account)
        self.user.save()

        self.provider.add_user_auth(
            self.node_settings,
            self.user,
            external_account._id,
        )

        assert_equal(self.node_settings.external_account, external_account)
        assert_equal(self.node_settings.user_settings, self.user_settings)

    def test_add_user_auth_not_in_user_external_accounts(self):
        external_account = create_external_account()

        with assert_raises(HTTPError) as e:
            self.provider.add_user_auth(
                self.node_settings,
                self.user,
                external_account._id,
            )
            assert_equal(e.status_code, http.FORBIDDEN)
Esempio n. 3
0
def dataverse_add_user_auth(auth, node_addon, **kwargs):
    """Allows for importing existing auth to AddonDataverseNodeSettings"""

    provider = DataverseProvider()
    external_account_id = request.get_json().get('external_account_id')
    return provider.add_user_auth(node_addon, auth.user, external_account_id)
Esempio n. 4
0
def dataverse_add_user_auth(auth, node_addon, **kwargs):
    """Allows for importing existing auth to AddonDataverseNodeSettings"""

    provider = DataverseProvider()
    external_account_id = request.get_json().get('external_account_id')
    return provider.add_user_auth(node_addon, auth.user, external_account_id)