def _setup_request_mock(self, mock, query, search_results, search_engine='google'): engine_doc = get_html_doc('search_engines', search_engine + '.com') e = get_engine(search_engine) query_string, _ = searchcmd.get_query_string(query) url = e.get_search_request(query_string).url mock.get(url, content=engine_doc.body) urls = e.get_hits(engine_doc) for url, result in zip(urls, search_results): mock.get(url.url, content=result.body)
def test_query(self): self.result = None def mock_search(query_string=None, cmd=None, **kwargs): self.result = (cmd, query_string) return Commands() orig_search = searchcmd.search searchcmd.search = mock_search try: main(['find', '--no-cache']) self.assertEqual(self.result, ('find', 'linux find examples')) main(['search replace', '--no-cache']) self.assertEqual(self.result, (None, 'linux search replace')) main(['git', 'commit', 'change last commit message', '--no-cache']) self.assertEqual( self.result, ('git commit', 'linux git commit change last commit message')) with self.assertRaises(ValueError): searchcmd.get_query_string([]) finally: searchcmd.search = orig_search