[mod] checker: minor adjustements on the default tests

the query "time" is convinient because most of the search engine will return some results,
but some engines in the general category will return documentation about the HTML tags <time> or <input type="time">
This commit is contained in:
Alexandre Flament 2021-01-08 19:05:56 +01:00
parent 45bfab77d0
commit f3e1bd308f
1 changed files with 8 additions and 6 deletions

View File

@ -179,15 +179,15 @@ class OnlineProcessor(EngineProcessor):
requests_exception = True requests_exception = True
elif (issubclass(e.__class__, SearxEngineCaptchaException)): elif (issubclass(e.__class__, SearxEngineCaptchaException)):
result_container.add_unresponsive_engine(self.engine_name, 'CAPTCHA required') result_container.add_unresponsive_engine(self.engine_name, 'CAPTCHA required')
logger.exception('engine {0} : CAPTCHA') logger.exception('engine {0} : CAPTCHA'.format(self.engine_name))
suspended_time = e.suspended_time # pylint: disable=no-member suspended_time = e.suspended_time # pylint: disable=no-member
elif (issubclass(e.__class__, SearxEngineTooManyRequestsException)): elif (issubclass(e.__class__, SearxEngineTooManyRequestsException)):
result_container.add_unresponsive_engine(self.engine_name, 'too many requests') result_container.add_unresponsive_engine(self.engine_name, 'too many requests')
logger.exception('engine {0} : Too many requests') logger.exception('engine {0} : Too many requests'.format(self.engine_name))
suspended_time = e.suspended_time # pylint: disable=no-member suspended_time = e.suspended_time # pylint: disable=no-member
elif (issubclass(e.__class__, SearxEngineAccessDeniedException)): elif (issubclass(e.__class__, SearxEngineAccessDeniedException)):
result_container.add_unresponsive_engine(self.engine_name, 'blocked') result_container.add_unresponsive_engine(self.engine_name, 'blocked')
logger.exception('engine {0} : Searx is blocked') logger.exception('engine {0} : Searx is blocked'.format(self.engine_name))
suspended_time = e.suspended_time # pylint: disable=no-member suspended_time = e.suspended_time # pylint: disable=no-member
else: else:
result_container.add_unresponsive_engine(self.engine_name, 'unexpected crash') result_container.add_unresponsive_engine(self.engine_name, 'unexpected crash')
@ -216,22 +216,24 @@ class OnlineProcessor(EngineProcessor):
tests = {} tests = {}
tests['simple'] = { tests['simple'] = {
'matrix': {'query': ('time', 'time')}, 'matrix': {'query': ('life', 'computer')},
'result_container': ['not_empty'], 'result_container': ['not_empty'],
} }
if getattr(self.engine, 'paging', False): if getattr(self.engine, 'paging', False):
# [1, 2, 3] --> isinstance(l, (list, tuple)) ??
tests['paging'] = { tests['paging'] = {
'matrix': {'query': 'time', 'matrix': {'query': 'time',
'pageno': (1, 2, 3)}, 'pageno': (1, 2, 3)},
'result_container': ['not_empty'], 'result_container': ['not_empty'],
'test': ['unique_results'] 'test': ['unique_results']
} }
if 'general' in self.engine.categories:
# avoid documentation about HTML tags (<time> and <input type="time">)
tests['paging']['matrix']['query'] = 'news'
if getattr(self.engine, 'time_range', False): if getattr(self.engine, 'time_range', False):
tests['time_range'] = { tests['time_range'] = {
'matrix': {'query': 'time', 'matrix': {'query': 'news',
'time_range': (None, 'day')}, 'time_range': (None, 'day')},
'result_container': ['not_empty'], 'result_container': ['not_empty'],
'test': ['unique_results'] 'test': ['unique_results']