def test_simple_search(self): try: search_index = SearchIndex(self.context) hits, searcher = search_index.search('test') for i, doc in hits: foo, bar = doc.get('uid'), hits.score(i) if searcher: searcher.close() except Exception, e: self.fail('Error searching: %s' % e)
config = canary.context.CanaryConfig() config.read_file(options.config) context = canary.context.Context(config) source_catalog = context.get_source_catalog() ctm = source_catalog.get_complete_mapping() if not args: print usage sys.exit(0) query_str = options.boolean.join( [' "%s" [%s] ' % (term, options.field) for term in args]) #print query_str.strip() search_index = SearchIndex(context) hit_list = [] hits, searcher = search_index.search(query_str) for i, doc in hits: hit_list.append(doc.get('uid')) searcher.close() output = [] for id in hit_list: rec = QueuedRecord(context, int(id)) if options.locations: study = Study(context, rec.study_id) for loc in study.locations: out = [] out.extend((id, loc.uid, loc.study_id, loc.feature_id)) feature = Feature(uid=loc.feature_id)