Exemplo n.º 1
0
 def test_get_targets(self):
     AddonDataverseNodeSettings.remove()
     addons = [
         AddonDataverseNodeSettings(),
         AddonDataverseNodeSettings(study_hdl='foo'),
         AddonDataverseNodeSettings(user_settings=self.user_addon),
         AddonDataverseNodeSettings(study_hdl='foo',
                                    user_settings=self.user_addon),
     ]
     for addon in addons:
         addon.save()
     targets = get_targets()
     assert_equal(targets.count(), 1)
     assert_equal(targets[0]._id, addons[-1]._id)
Exemplo n.º 2
0
 def test_defaults(self):
     node_settings = AddonDataverseNodeSettings(user_settings=self.user_settings)
     node_settings.save()
     assert_is_none(node_settings.dataverse)
     assert_is_none(node_settings.dataverse_alias)
     assert_is_none(node_settings.dataset)
     assert_is_none(node_settings.dataset_doi)
Exemplo n.º 3
0
 def test_fields(self):
     node_settings = AddonDataverseNodeSettings(user_settings=self.user_settings)
     node_settings.save()
     assert_true(node_settings.user_settings)
     assert_equal(node_settings.user_settings.owner, self.user)
     assert_true(hasattr(node_settings, 'dataverse'))
     assert_true(hasattr(node_settings, 'dataverse_alias'))
     assert_true(hasattr(node_settings, 'dataset'))
     assert_true(hasattr(node_settings, 'dataset_doi'))
Exemplo n.º 4
0
    def test_connect_from_settings_or_401(self, mock_connect):
        node_settings = AddonDataverseNodeSettings()
        node_settings.external_account = create_external_account(
            self.host, self.token,
        )

        connection = connect_from_settings_or_401(node_settings)
        assert_true(connection)
        mock_connect.assert_called_once_with(self.host, self.token)
Exemplo n.º 5
0
    def test_connect_from_settings_or_401_forbidden(self, mock_connection):
        mock_connection.side_effect = UnauthorizedError()
        node_settings = AddonDataverseNodeSettings()
        node_settings.external_account = create_external_account(
            self.host, self.token,
        )

        with assert_raises(HTTPError) as e:
            connect_from_settings_or_401(node_settings)

        mock_connection.assert_called_once_with(self.host, self.token)
        assert_equal(e.exception.code, 401)
Exemplo n.º 6
0
    def test_has_auth(self):
        node_settings = AddonDataverseNodeSettings()
        node_settings.save()
        assert_false(node_settings.has_auth)

        user_settings = AddonDataverseUserSettings()
        user_settings.save()
        node_settings.user_settings = user_settings
        node_settings.save()
        assert_false(node_settings.has_auth)

        user_settings.api_token = 'foo-bar'
        user_settings.save()
        assert_true(node_settings.has_auth)
Exemplo n.º 7
0
    def test_has_auth(self):
        node_settings = AddonDataverseNodeSettings()
        node_settings.save()
        assert_false(node_settings.has_auth)

        user_settings = AddonDataverseUserSettings()
        user_settings.save()
        node_settings.user_settings = user_settings
        node_settings.save()
        assert_false(node_settings.has_auth)

        user_settings.dataverse_username = '******'
        user_settings.dataverse_password = '******'
        user_settings.save()
        assert_true(node_settings.has_auth)