From a524dbb823e88482a762d56ac1ed352641f3f0c3 Mon Sep 17 00:00:00 2001 From: marc Date: Tue, 10 Oct 2017 16:49:49 -0500 Subject: [fix] language support for bing images and videos --- tests/unit/engines/test_bing_images.py | 12 ++++++++---- tests/unit/engines/test_bing_videos.py | 2 ++ 2 files changed, 10 insertions(+), 4 deletions(-) (limited to 'tests') diff --git a/tests/unit/engines/test_bing_images.py b/tests/unit/engines/test_bing_images.py index 287f13499..8b0bdb39d 100644 --- a/tests/unit/engines/test_bing_images.py +++ b/tests/unit/engines/test_bing_images.py @@ -8,10 +8,12 @@ from searx.testing import SearxTestCase class TestBingImagesEngine(SearxTestCase): def test_request(self): + bing_images.supported_languages = ['fr-FR', 'en-US'] + query = 'test_query' dicto = defaultdict(dict) dicto['pageno'] = 1 - dicto['language'] = 'fr_FR' + dicto['language'] = 'fr-FR' dicto['safesearch'] = 1 dicto['time_range'] = '' params = bing_images.request(query, dicto) @@ -19,12 +21,14 @@ class TestBingImagesEngine(SearxTestCase): self.assertTrue(query in params['url']) self.assertTrue('bing.com' in params['url']) self.assertTrue('SRCHHPGUSR' in params['cookies']) - self.assertTrue('fr' in params['cookies']['SRCHHPGUSR']) + self.assertTrue('DEMOTE' in params['cookies']['SRCHHPGUSR']) + self.assertTrue('_EDGE_S' in params['cookies']) + self.assertTrue('fr-fr' in params['cookies']['_EDGE_S']) dicto['language'] = 'all' params = bing_images.request(query, dicto) - self.assertIn('SRCHHPGUSR', params['cookies']) - self.assertIn('en', params['cookies']['SRCHHPGUSR']) + self.assertTrue('_EDGE_S' in params['cookies']) + self.assertTrue('en' in params['cookies']['_EDGE_S']) def test_response(self): self.assertRaises(AttributeError, bing_images.response, None) diff --git a/tests/unit/engines/test_bing_videos.py b/tests/unit/engines/test_bing_videos.py index 011b5410a..118754b25 100644 --- a/tests/unit/engines/test_bing_videos.py +++ b/tests/unit/engines/test_bing_videos.py @@ -8,6 +8,8 @@ from searx.testing import SearxTestCase class TestBingVideosEngine(SearxTestCase): def test_request(self): + bing_videos.supported_languages = ['fr-FR', 'en-US'] + query = 'test_query' dicto = defaultdict(dict) dicto['pageno'] = 1 -- cgit v1.2.3 From 44085e31d0ccf140f307389bd42654f5ada8667f Mon Sep 17 00:00:00 2001 From: marc Date: Tue, 10 Oct 2017 16:52:41 -0500 Subject: update engines_languages.json and languages.py Also, fix fetch_languages.py so it can run on python3. --- tests/unit/engines/test_swisscows.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'tests') diff --git a/tests/unit/engines/test_swisscows.py b/tests/unit/engines/test_swisscows.py index 53890be78..492526f94 100644 --- a/tests/unit/engines/test_swisscows.py +++ b/tests/unit/engines/test_swisscows.py @@ -139,9 +139,9 @@ class TestSwisscowsEngine(SearxTestCase):
    -
  • -
  • -
  • +
  • +
  • +
-- cgit v1.2.3 From 54f0ab1f3bd6bcd05eb2108a3a2eeaf5bd71ab61 Mon Sep 17 00:00:00 2001 From: marc Date: Tue, 10 Oct 2017 17:30:43 -0500 Subject: test fetch langauges function on bing images --- tests/unit/engines/test_bing_images.py | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/unit/engines/test_bing_images.py b/tests/unit/engines/test_bing_images.py index 8b0bdb39d..3f3006124 100644 --- a/tests/unit/engines/test_bing_images.py +++ b/tests/unit/engines/test_bing_images.py @@ -25,10 +25,15 @@ class TestBingImagesEngine(SearxTestCase): self.assertTrue('_EDGE_S' in params['cookies']) self.assertTrue('fr-fr' in params['cookies']['_EDGE_S']) + dicto['language'] = 'fr' + params = bing_images.request(query, dicto) + self.assertTrue('_EDGE_S' in params['cookies']) + self.assertTrue('fr-fr' in params['cookies']['_EDGE_S']) + dicto['language'] = 'all' params = bing_images.request(query, dicto) self.assertTrue('_EDGE_S' in params['cookies']) - self.assertTrue('en' in params['cookies']['_EDGE_S']) + self.assertTrue('en-us' in params['cookies']['_EDGE_S']) def test_response(self): self.assertRaises(AttributeError, bing_images.response, None) @@ -86,3 +91,28 @@ class TestBingImagesEngine(SearxTestCase): self.assertEqual(results[0]['content'], '') self.assertEqual(results[0]['thumbnail_src'], 'thumb_url') self.assertEqual(results[0]['img_src'], 'img_url') + + def test_fetch_supported_languages(self): + html = """ +
+
+ + +
+
+ """ + response = mock.Mock(text=html) + languages = list(bing_images._fetch_supported_languages(response)) + self.assertEqual(len(languages), 3) + self.assertIn('de-DE', languages) + self.assertIn('no-NO', languages) + self.assertIn('es-AR', languages) -- cgit v1.2.3