예제 #1
0
class TestBingSearch(unittest.TestCase):
    def setUp(self):
        self.bs = BingSearch('query text')
        fixture_path = normpath(
            join(dirname(__file__), ('../../../../tests/'
                                     'fixtures/search/bingSearch.json')))
        self.fixture = open(fixture_path)
        self.page = simplejson.load(self.fixture)
        self.results = self.bs._extract_raw_results_list(self.page)

    def tearDown(self):
        self.fixture.close()

    def test_extract_info(self):
        search_info = self.bs._extract_info(self.page)
        self.failUnless(search_info['to'] == 2, 'Wrong "to" field')
        self.failUnless(search_info['from'] == 1, 'Wrong "from" field')
        self.failUnless(search_info['total'] == 2, 'Wrong total field')

    def test_extract_result(self):
        result = self.bs._extract_result(self.results[0])
        self.failUnless(result.title == ('Query Learning and Certificates '
                                         'in Lattices'))
        self.failUnless(result.url == (
            'http://www.lsi.upc.es/~balqui/postscript/latticesALT.pdf'))
        self.failUnless(result.desc.startswith('Three major'))
예제 #2
0
class TestBingSearch(unittest.TestCase):
    def setUp(self):
        self.bs = BingSearch('query text')
        fixture_path = normpath(join(dirname(__file__), ('../../../../tests/'
            'fixtures/search/bingSearch.json')))
        self.fixture = open(fixture_path)
        self.page = simplejson.load(self.fixture)
        self.results = self.bs._extract_raw_results_list(self.page)
        
    def tearDown(self):
        self.fixture.close() 
    
    def test_extract_info(self):
        search_info = self.bs._extract_info(self.page)
        self.failUnless(search_info['to'] == 2, 'Wrong "to" field')
        self.failUnless(search_info['from'] == 1, 'Wrong "from" field')
        self.failUnless(search_info['total'] == 2, 'Wrong total field')
    
    def test_extract_result(self):
        result = self.bs._extract_result(self.results[0])
        self.failUnless(result.title == ('Query Learning and Certificates '
                                         'in Lattices'))
        self.failUnless(result.url == 
            ('http://www.lsi.upc.es/~balqui/postscript/latticesALT.pdf'))
        self.failUnless(result.desc.startswith('Three major'))
예제 #3
0
 def setUp(self):
     self.bs = BingSearch('query text')
     fixture_path = normpath(
         join(dirname(__file__), ('../../../../tests/'
                                  'fixtures/search/bingSearch.json')))
     self.fixture = open(fixture_path)
     self.page = simplejson.load(self.fixture)
     self.results = self.bs._extract_raw_results_list(self.page)
예제 #4
0
 def setUp(self):
     self.bs = BingSearch('query text')
     fixture_path = normpath(join(dirname(__file__), ('../../../../tests/'
         'fixtures/search/bingSearch.json')))
     self.fixture = open(fixture_path)
     self.page = simplejson.load(self.fixture)
     self.results = self.bs._extract_raw_results_list(self.page)
예제 #5
0
 def create_searcher(self, engine):
     if engine == Searcher.GOOGLE:
         return GoogleJSONSearch()
     elif engine == Searcher.SCHOLAR:
         return ScholarSearch()
     elif engine == Searcher.BING:
         return BingSearch()
     elif engine == Searcher.YAHOO:
         return YahooSearch()
     else:
         raise UtilCreationError('Requested searcher is not available')