summaryrefslogtreecommitdiff
path: root/tests/unit/engines/test_unsplash.py
diff options
context:
space:
mode:
authorDenis Wernert <deniswernert@gmail.com>2018-10-08 14:01:55 +0200
committerDenis Wernert <deniswernert@gmail.com>2018-10-08 14:01:55 +0200
commitee07a5e75005deb5d846f404f350aefd96b11b2d (patch)
treef667de1d5268457f9b0439786d0c5907295eb360 /tests/unit/engines/test_unsplash.py
parent72d063d27d9277b12efe2ec16fe1c95ef651c2a2 (diff)
Adds a unit test for the unsplash engine
Diffstat (limited to 'tests/unit/engines/test_unsplash.py')
-rw-r--r--tests/unit/engines/test_unsplash.py38
1 files changed, 38 insertions, 0 deletions
diff --git a/tests/unit/engines/test_unsplash.py b/tests/unit/engines/test_unsplash.py
new file mode 100644
index 000000000..cb9e683c4
--- /dev/null
+++ b/tests/unit/engines/test_unsplash.py
@@ -0,0 +1,38 @@
+from collections import defaultdict
+import mock
+from searx.testing import SearxTestCase
+from searx.engines import unsplash
+
+
+class TestUnsplashEngine(SearxTestCase):
+ def test_request(self):
+ query = 'penguin'
+ _dict = defaultdict(dict)
+ _dict['pageno'] = 1
+ params = unsplash.request(query, _dict)
+
+ self.assertTrue('url' in params)
+ self.assertTrue(query in params['url'])
+
+ def test_response(self):
+ resp = mock.Mock(text='{}')
+ result = unsplash.response(resp)
+ self.assertEqual([], result)
+
+ resp.text = '{"results": []}'
+ result = unsplash.response(resp)
+ self.assertEqual([], result)
+
+ # Sourced from https://unsplash.com/napi/search/photos?query=penguin&xp=&per_page=20&page=2
+ with open('./tests/unit/engines/unsplash_fixture.json') as fixture:
+ resp.text = fixture.read()
+
+ result = unsplash.response(resp)
+ self.assertEqual(len(result), 2)
+ self.assertEqual(result[0]['title'], 'low angle photography of swimming penguin')
+ self.assertEqual(result[0]['url'], 'https://unsplash.com/photos/FY8d721UO_4')
+ self.assertEqual(result[0]['thumbnail_src'], 'https://images.unsplash.com/photo-1523557148507-1b77641c7e7c?ixlib=rb-0.3.5&q=80\
+&fm=jpg&crop=entropy&cs=tinysrgb&w=200&fit=max&ixid=eyJhcHBfaWQiOjEyMDd9&s=a9b9e56e63efc6f4611a87ce7e9a48f8')
+ self.assertEqual(result[0]['img_src'], 'https://images.unsplash.com/photo-1523557148507-1b77641c7e7c?ixlib=rb-0.3.5\
+&ixid=eyJhcHBfaWQiOjEyMDd9&s=095c5fc319c5a77c705f49ad63e0f195')
+ self.assertEqual(result[0]['content'], '')