def test_common_args_parsing(self): excluded_indexes = 'myapp.indexes.A,myapp.indexes.B' include_spelling = 1 batch_size = 100 params = 'EXCLUDED_INDEXES=%s&INCLUDE_SPELLING=%s&BATCH_SIZE=%s' % ( excluded_indexes, include_spelling, batch_size ) for url in [ self.solr_url, self.elasticsearch_url, self.whoosh_url, self.xapian_url, self.simple_url, ]: url = '?'.join([url, params]) url = Env.search_url_config(url) self.assertTrue('EXCLUDED_INDEXES' in url.keys()) self.assertTrue('myapp.indexes.A' in url['EXCLUDED_INDEXES']) self.assertTrue('myapp.indexes.B' in url['EXCLUDED_INDEXES']) self.assertTrue('INCLUDE_SPELLING'in url.keys()) self.assertTrue(url['INCLUDE_SPELLING']) self.assertTrue('BATCH_SIZE' in url.keys()) self.assertEqual(url['BATCH_SIZE'], 100)
def test_simple_parsing(self): url = Env.search_url_config(self.simple_url) self.assertEqual(url['ENGINE'], 'haystack.backends.simple_backend.SimpleEngine') self.assertTrue('INDEX_NAME' not in url) self.assertTrue('PATH' not in url)
def test_common_args_parsing(self): excluded_indexes = "myapp.indexes.A,myapp.indexes.B" include_spelling = 1 batch_size = 100 params = "EXCLUDED_INDEXES=%s&INCLUDE_SPELLING=%s&BATCH_SIZE=%s" % ( excluded_indexes, include_spelling, batch_size, ) for url in [ self.solr_url, self.elasticsearch_url, self.whoosh_url, self.xapian_url, self.simple_url, ]: url = "?".join([url, params]) url = Env.search_url_config(url) self.assertTrue("EXCLUDED_INDEXES" in url.keys()) self.assertTrue("myapp.indexes.A" in url["EXCLUDED_INDEXES"]) self.assertTrue("myapp.indexes.B" in url["EXCLUDED_INDEXES"]) self.assertTrue("INCLUDE_SPELLING" in url.keys()) self.assertTrue(url["INCLUDE_SPELLING"]) self.assertTrue("BATCH_SIZE" in url.keys()) self.assertEqual(url["BATCH_SIZE"], 100)
def test_solr_multicore_parsing(self): timeout = 360 index = 'solr_index' url = '%s/%s?TIMEOUT=%s' % (self.solr_url, index, timeout) url = Env.search_url_config(url) self.assertEqual(url['ENGINE'], 'haystack.backends.solr_backend.SolrEngine') self.assertEqual(url['URL'], 'http://127.0.0.1:8983/solr/solr_index') self.assertEqual(url['TIMEOUT'], timeout) self.assertTrue('INDEX_NAME' not in url) self.assertTrue('PATH' not in url)
def test_xapian_parsing(self): flags = 'myflags' url = '%s?FLAGS=%s' % (self.xapian_url, flags) url = Env.search_url_config(url) self.assertEqual(url['ENGINE'], 'haystack.backends.xapian_backend.XapianEngine') self.assertTrue('PATH' in url.keys()) self.assertEqual(url['PATH'], '/home/search/xapian_index') self.assertTrue('FLAGS' in url.keys()) self.assertEqual(url['FLAGS'], flags) self.assertTrue('INDEX_NAME' not in url)
def test_elasticsearch_parsing(self): timeout = 360 url = '%s?TIMEOUT=%s' % (self.elasticsearch_url, timeout) url = Env.search_url_config(url) self.assertEqual(url['ENGINE'], 'haystack.backends.elasticsearch_backend.ElasticsearchSearchEngine') self.assertTrue('INDEX_NAME' in url.keys()) self.assertEqual(url['INDEX_NAME'], 'index') self.assertTrue('TIMEOUT' in url.keys()) self.assertEqual(url['TIMEOUT'], timeout) self.assertTrue('PATH' not in url)
def test_xapian_parsing(self): flags = "myflags" url = "%s?FLAGS=%s" % (self.xapian_url, flags) url = Env.search_url_config(url) self.assertEqual(url["ENGINE"], "haystack.backends.xapian_backend.XapianEngine") self.assertTrue("PATH" in url.keys()) self.assertEqual(url["PATH"], "/home/search/xapian_index") self.assertTrue("FLAGS" in url.keys()) self.assertEqual(url["FLAGS"], flags) self.assertTrue("INDEX_NAME" not in url)
def test_solr_multicore_parsing(self): timeout = 360 index = "solr_index" url = "%s/%s?TIMEOUT=%s" % (self.solr_url, index, timeout) url = Env.search_url_config(url) self.assertEqual(url["ENGINE"], "haystack.backends.solr_backend.SolrEngine") self.assertEqual(url["URL"], "http://127.0.0.1:8983/solr/solr_index") self.assertEqual(url["TIMEOUT"], timeout) self.assertTrue("INDEX_NAME" not in url) self.assertTrue("PATH" not in url)
def test_whoosh_parsing(self): storage = "file" # or ram post_limit = 128 * 1024 * 1024 url = "%s?STORAGE=%s&POST_LIMIT=%s" % (self.whoosh_url, storage, post_limit) url = Env.search_url_config(url) self.assertEqual(url["ENGINE"], "haystack.backends.whoosh_backend.WhooshEngine") self.assertTrue("PATH" in url.keys()) self.assertEqual(url["PATH"], "/home/search/whoosh_index") self.assertTrue("STORAGE" in url.keys()) self.assertEqual(url["STORAGE"], storage) self.assertTrue("POST_LIMIT" in url.keys()) self.assertEqual(url["POST_LIMIT"], post_limit) self.assertTrue("INDEX_NAME" not in url)
def test_elasticsearch_parsing(self): timeout = 360 url = "%s?TIMEOUT=%s" % (self.elasticsearch_url, timeout) url = Env.search_url_config(url) self.assertEqual( url["ENGINE"], "haystack.backends.elasticsearch_backend.ElasticsearchSearchEngine", ) self.assertTrue("INDEX_NAME" in url.keys()) self.assertEqual(url["INDEX_NAME"], "index") self.assertTrue("TIMEOUT" in url.keys()) self.assertEqual(url["TIMEOUT"], timeout) self.assertTrue("PATH" not in url)
def test_whoosh_parsing(self): storage = 'file' # or ram post_limit = 128 * 1024 * 1024 url = '%s?STORAGE=%s&POST_LIMIT=%s' % (self.whoosh_url, storage, post_limit) url = Env.search_url_config(url) self.assertEqual(url['ENGINE'], 'haystack.backends.whoosh_backend.WhooshEngine') self.assertTrue('PATH' in url.keys()) self.assertEqual(url['PATH'], '/home/search/whoosh_index') self.assertTrue('STORAGE' in url.keys()) self.assertEqual(url['STORAGE'], storage) self.assertTrue('POST_LIMIT' in url.keys()) self.assertEqual(url['POST_LIMIT'], post_limit) self.assertTrue('INDEX_NAME' not in url)
def test_solr_parsing(self): url = Env.search_url_config(self.solr_url) self.assertEqual(url['ENGINE'], 'haystack.backends.solr_backend.SolrEngine') self.assertEqual(url['URL'], 'http://127.0.0.1:8983/solr')
def test_simple_parsing(self): url = Env.search_url_config(self.simple_url) self.assertEqual(url["ENGINE"], "haystack.backends.simple_backend.SimpleEngine") self.assertTrue("INDEX_NAME" not in url) self.assertTrue("PATH" not in url)
def test_solr_parsing(self): url = Env.search_url_config(self.solr_url) self.assertEqual(url["ENGINE"], "haystack.backends.solr_backend.SolrEngine") self.assertEqual(url["URL"], "http://127.0.0.1:8983/solr")