|
@@ -1,7 +1,6 @@
|
|
# -*- coding: utf-8 -*-
|
|
# -*- coding: utf-8 -*-
|
|
"""Test utils/standalone_searx.py"""
|
|
"""Test utils/standalone_searx.py"""
|
|
import datetime
|
|
import datetime
|
|
-import importlib.util
|
|
|
|
import io
|
|
import io
|
|
import sys
|
|
import sys
|
|
|
|
|
|
@@ -10,16 +9,7 @@ from nose2.tools import params
|
|
|
|
|
|
from searx.search import SearchQuery, EngineRef, initialize
|
|
from searx.search import SearchQuery, EngineRef, initialize
|
|
from searx.testing import SearxTestCase
|
|
from searx.testing import SearxTestCase
|
|
-
|
|
|
|
-
|
|
|
|
-def get_standalone_searx_module():
|
|
|
|
- """Get standalone_searx module."""
|
|
|
|
- module_name = 'utils.standalone_searx'
|
|
|
|
- filename = 'utils/standalone_searx.py'
|
|
|
|
- spec = importlib.util.spec_from_file_location(module_name, filename)
|
|
|
|
- sas = importlib.util.module_from_spec(spec)
|
|
|
|
- spec.loader.exec_module(sas)
|
|
|
|
- return sas
|
|
|
|
|
|
+from searx_extra import standalone_searx as sas
|
|
|
|
|
|
|
|
|
|
class StandaloneSearx(SearxTestCase):
|
|
class StandaloneSearx(SearxTestCase):
|
|
@@ -33,7 +23,6 @@ class StandaloneSearx(SearxTestCase):
|
|
|
|
|
|
def test_parse_argument_no_args(self):
|
|
def test_parse_argument_no_args(self):
|
|
"""Test parse argument without args."""
|
|
"""Test parse argument without args."""
|
|
- sas = get_standalone_searx_module()
|
|
|
|
with patch.object(sys, 'argv', ['standalone_searx']), \
|
|
with patch.object(sys, 'argv', ['standalone_searx']), \
|
|
self.assertRaises(SystemExit):
|
|
self.assertRaises(SystemExit):
|
|
sys.stderr = io.StringIO()
|
|
sys.stderr = io.StringIO()
|
|
@@ -42,7 +31,6 @@ class StandaloneSearx(SearxTestCase):
|
|
|
|
|
|
def test_parse_argument_basic_args(self):
|
|
def test_parse_argument_basic_args(self):
|
|
"""Test parse argument with basic args."""
|
|
"""Test parse argument with basic args."""
|
|
- sas = get_standalone_searx_module()
|
|
|
|
query = 'red box'
|
|
query = 'red box'
|
|
exp_dict = {
|
|
exp_dict = {
|
|
'query': query, 'category': 'general', 'lang': 'all', 'pageno': 1,
|
|
'query': query, 'category': 'general', 'lang': 'all', 'pageno': 1,
|
|
@@ -56,7 +44,6 @@ class StandaloneSearx(SearxTestCase):
|
|
|
|
|
|
def test_to_dict(self):
|
|
def test_to_dict(self):
|
|
"""test to_dict."""
|
|
"""test to_dict."""
|
|
- sas = get_standalone_searx_module()
|
|
|
|
self.assertEqual(
|
|
self.assertEqual(
|
|
sas.to_dict(
|
|
sas.to_dict(
|
|
sas.get_search_query(sas.parse_argument(['red box']))),
|
|
sas.get_search_query(sas.parse_argument(['red box']))),
|
|
@@ -72,7 +59,6 @@ class StandaloneSearx(SearxTestCase):
|
|
|
|
|
|
def test_to_dict_with_mock(self):
|
|
def test_to_dict_with_mock(self):
|
|
"""test to dict."""
|
|
"""test to dict."""
|
|
- sas = get_standalone_searx_module()
|
|
|
|
with patch.object(sas.searx.search, 'Search') as mock_s:
|
|
with patch.object(sas.searx.search, 'Search') as mock_s:
|
|
m_search = mock_s().search()
|
|
m_search = mock_s().search()
|
|
m_sq = Mock()
|
|
m_sq = Mock()
|
|
@@ -97,7 +83,6 @@ class StandaloneSearx(SearxTestCase):
|
|
|
|
|
|
def test_get_search_query(self):
|
|
def test_get_search_query(self):
|
|
"""test get_search_query."""
|
|
"""test get_search_query."""
|
|
- sas = get_standalone_searx_module()
|
|
|
|
args = sas.parse_argument(['rain', ])
|
|
args = sas.parse_argument(['rain', ])
|
|
search_q = sas.get_search_query(args)
|
|
search_q = sas.get_search_query(args)
|
|
self.assertTrue(search_q)
|
|
self.assertTrue(search_q)
|
|
@@ -106,7 +91,6 @@ class StandaloneSearx(SearxTestCase):
|
|
|
|
|
|
def test_no_parsed_url(self):
|
|
def test_no_parsed_url(self):
|
|
"""test no_parsed_url func"""
|
|
"""test no_parsed_url func"""
|
|
- sas = get_standalone_searx_module()
|
|
|
|
self.assertEqual(
|
|
self.assertEqual(
|
|
sas.no_parsed_url([{'parsed_url': 'http://example.com'}]),
|
|
sas.no_parsed_url([{'parsed_url': 'http://example.com'}]),
|
|
[{}]
|
|
[{}]
|
|
@@ -119,11 +103,9 @@ class StandaloneSearx(SearxTestCase):
|
|
)
|
|
)
|
|
def test_json_serial(self, arg, exp_res):
|
|
def test_json_serial(self, arg, exp_res):
|
|
"""test json_serial func"""
|
|
"""test json_serial func"""
|
|
- sas = get_standalone_searx_module()
|
|
|
|
self.assertEqual(sas.json_serial(arg), exp_res)
|
|
self.assertEqual(sas.json_serial(arg), exp_res)
|
|
|
|
|
|
def test_json_serial_error(self):
|
|
def test_json_serial_error(self):
|
|
"""test error on json_serial."""
|
|
"""test error on json_serial."""
|
|
- sas = get_standalone_searx_module()
|
|
|
|
with self.assertRaises(TypeError):
|
|
with self.assertRaises(TypeError):
|
|
sas.json_serial('a')
|
|
sas.json_serial('a')
|