本文整理汇总了Python中ckan.lib.search.common.SolrSettings类的典型用法代码示例。如果您正苦于以下问题:Python SolrSettings类的具体用法?Python SolrSettings怎么用?Python SolrSettings使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了SolrSettings类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_entity_update_indexerror
def test_entity_update_indexerror(self):
"""
Test that we can't update a package if Solr is down.
"""
bad_solr_url = "http://127.0.0.1/badsolrurl"
original_settings = SolrSettings.get()[0]
try:
SolrSettings.init(bad_solr_url)
assert_raises(search.SearchIndexError, self.assert_package_update_ok, "name", "post")
finally:
SolrSettings.init(original_settings)
示例2: test_entity_update_indexerror
def test_entity_update_indexerror(self):
"""
Test that we can't update a package if Solr is down.
"""
bad_solr_url = 'http://example.com/badsolrurl'
original_settings = SolrSettings.get()[0]
try:
SolrSettings.init(bad_solr_url)
assert_raises(
search.SearchIndexError, self.assert_package_update_ok, 'name', 'post'
)
finally:
SolrSettings.init(original_settings)
示例3: test_entity_update_indexerror
def test_entity_update_indexerror(self):
"""
Test that we can't update a package if Solr is down.
"""
bad_solr_url = 'http://127.0.0.1/badsolrurl'
original_settings = SolrSettings.get()[0]
try:
SolrSettings.init(bad_solr_url)
plugins.load('synchronous_search')
assert_raises(
search.SearchIndexError, self.assert_package_update_ok, 'name', 'post'
)
finally:
plugins.unload('synchronous_search')
SolrSettings.init(original_settings)
示例4: assert_solr_schema_is_the_dgu_variant
def assert_solr_schema_is_the_dgu_variant():
'''
Checks if the schema version of the SOLR server is compatible
with DGU.
Based on ckan.lib.search.check_solr_schema_version
'''
import urllib2
from ckan.lib.search.common import is_available, SolrSettings
from ckan.lib.search import SOLR_SCHEMA_FILE_OFFSET
if not is_available():
# Something is wrong with the SOLR server
log.warn('Problems were found while connecting to the SOLR server')
return False
# Request the schema XML file to extract the version
solr_url, solr_user, solr_password = SolrSettings.get()
http_auth = None
if solr_user is not None and solr_password is not None:
http_auth = solr_user + ':' + solr_password
http_auth = 'Basic ' + http_auth.encode('base64').strip()
url = solr_url.strip('/') + SOLR_SCHEMA_FILE_OFFSET
req = urllib2.Request(url=url)
if http_auth:
req.add_header('Authorization', http_auth)
solr_schema = urllib2.urlopen(req).read()
assert 'DGU variant' in solr_schema, 'Change your development.ini to use the DGU schema.'
示例5: test_register_post_indexerror
def test_register_post_indexerror(self):
"""
Test that we can't add a package if Solr is down.
"""
bad_solr_url = 'http://example.com/badsolrurl'
original_settings = SolrSettings.get()[0]
try:
SolrSettings.init(bad_solr_url)
assert not self.get_package_by_name(self.package_fixture_data['name'])
offset = self.package_offset()
data = self.dumps(self.package_fixture_data)
self.post_json(offset, data, status=500, extra_environ=self.admin_extra_environ)
model.Session.remove()
finally:
SolrSettings.init(original_settings)
示例6: test_register_post_indexerror
def test_register_post_indexerror(self):
"""
Test that we can't add a package if Solr is down.
"""
bad_solr_url = "http://127.0.0.1/badsolrurl"
original_settings = SolrSettings.get()[0]
try:
SolrSettings.init(bad_solr_url)
plugins.load("synchronous_search")
assert not self.get_package_by_name(self.package_fixture_data["name"])
offset = self.package_offset()
data = self.dumps(self.package_fixture_data)
self.post_json(offset, data, status=500, extra_environ=self.admin_extra_environ)
model.Session.remove()
finally:
SolrSettings.init(original_settings)
示例7: test_new_indexerror
def test_new_indexerror(self):
bad_solr_url = 'http://127.0.0.1/badsolrurl'
solr_url = SolrSettings.get()[0]
try:
SolrSettings.init(bad_solr_url)
new_package_name = u'new-package-missing-solr'
offset = url_for(controller='package', action='new')
res = self.app.get(offset, extra_environ=self.extra_environ_tester)
fv = res.forms['dataset-edit']
fv['name'] = new_package_name
# this package shouldn't actually be created but
# add it to the list to purge just in case
self.pkg_names.append(new_package_name)
res = fv.submit('save', status=500, extra_environ=self.extra_environ_tester)
assert 'Unable to add package to search index' in res, res
finally:
SolrSettings.init(solr_url)
示例8: make_connection
def make_connection():
"""
Creates NGDS Solr Connection based on the values configured in pylons configuration file.
"""
from ckan.lib.search.common import SolrSettings
solr_url, solr_user, solr_password = SolrSettings.get()
assert solr_url is not None
if solr_user is not None and solr_password is not None:
return NgdsSolrConnection(solr_url, http_user=solr_user,
http_pass=solr_password)
else:
return NgdsSolrConnection(solr_url)