summaryrefslogtreecommitdiff
path: root/tests/unit/engines/test_youtube_api.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/unit/engines/test_youtube_api.py')
-rw-r--r--tests/unit/engines/test_youtube_api.py111
1 files changed, 0 insertions, 111 deletions
diff --git a/tests/unit/engines/test_youtube_api.py b/tests/unit/engines/test_youtube_api.py
deleted file mode 100644
index 0d4d478c3..000000000
--- a/tests/unit/engines/test_youtube_api.py
+++ /dev/null
@@ -1,111 +0,0 @@
-from collections import defaultdict
-import mock
-from searx.engines import youtube_api
-from searx.testing import SearxTestCase
-
-
-class TestYoutubeAPIEngine(SearxTestCase):
-
- def test_request(self):
- query = 'test_query'
- dicto = defaultdict(dict)
- dicto['pageno'] = 0
- dicto['language'] = 'fr_FR'
- params = youtube_api.request(query, dicto)
- self.assertTrue('url' in params)
- self.assertTrue(query in params['url'])
- self.assertIn('googleapis.com', params['url'])
- self.assertIn('youtube', params['url'])
- self.assertIn('fr', params['url'])
-
- dicto['language'] = 'all'
- params = youtube_api.request(query, dicto)
- self.assertFalse('fr' in params['url'])
-
- def test_response(self):
- self.assertRaises(AttributeError, youtube_api.response, None)
- self.assertRaises(AttributeError, youtube_api.response, [])
- self.assertRaises(AttributeError, youtube_api.response, '')
- self.assertRaises(AttributeError, youtube_api.response, '[]')
-
- response = mock.Mock(text='{}')
- self.assertEqual(youtube_api.response(response), [])
-
- response = mock.Mock(text='{"data": []}')
- self.assertEqual(youtube_api.response(response), [])
-
- json = """
- {
- "kind": "youtube#searchListResponse",
- "etag": "xmg9xJZuZD438sF4hb-VcBBREXc/YJQDcTBCDcaBvl-sRZJoXdvy1ME",
- "nextPageToken": "CAUQAA",
- "pageInfo": {
- "totalResults": 1000000,
- "resultsPerPage": 20
- },
- "items": [
- {
- "kind": "youtube#searchResult",
- "etag": "xmg9xJZuZD438sF4hb-VcBBREXc/IbLO64BMhbHIgWLwLw7MDYe7Hs4",
- "id": {
- "kind": "youtube#video",
- "videoId": "DIVZCPfAOeM"
- },
- "snippet": {
- "publishedAt": "2015-05-29T22:41:04.000Z",
- "channelId": "UCNodmx1ERIjKqvcJLtdzH5Q",
- "title": "Title",
- "description": "Description",
- "thumbnails": {
- "default": {
- "url": "https://i.ytimg.com/vi/DIVZCPfAOeM/default.jpg"
- },
- "medium": {
- "url": "https://i.ytimg.com/vi/DIVZCPfAOeM/mqdefault.jpg"
- },
- "high": {
- "url": "https://i.ytimg.com/vi/DIVZCPfAOeM/hqdefault.jpg"
- }
- },
- "channelTitle": "MinecraftUniverse",
- "liveBroadcastContent": "none"
- }
- }
- ]
- }
- """
- response = mock.Mock(text=json)
- results = youtube_api.response(response)
- self.assertEqual(type(results), list)
- self.assertEqual(len(results), 1)
- self.assertEqual(results[0]['title'], 'Title')
- self.assertEqual(results[0]['url'], 'https://www.youtube.com/watch?v=DIVZCPfAOeM')
- self.assertEqual(results[0]['content'], 'Description')
- self.assertEqual(results[0]['thumbnail'], 'https://i.ytimg.com/vi/DIVZCPfAOeM/hqdefault.jpg')
- self.assertTrue('DIVZCPfAOeM' in results[0]['embedded'])
-
- json = """
- {
- "kind": "youtube#searchListResponse",
- "etag": "xmg9xJZuZD438sF4hb-VcBBREXc/YJQDcTBCDcaBvl-sRZJoXdvy1ME",
- "nextPageToken": "CAUQAA",
- "pageInfo": {
- "totalResults": 1000000,
- "resultsPerPage": 20
- }
- }
- """
- response = mock.Mock(text=json)
- results = youtube_api.response(response)
- self.assertEqual(type(results), list)
- self.assertEqual(len(results), 0)
-
- json = """
- {"toto":{"entry":[]
- }
- }
- """
- response = mock.Mock(text=json)
- results = youtube_api.response(response)
- self.assertEqual(type(results), list)
- self.assertEqual(len(results), 0)