コード例 #1
0
ファイル: test_art.py プロジェクト: zhang-xun/beets
 def test_google_art_finds_image(self):
     album = _common.Bag(albumartist="some artist", album="some album")
     json = """{"responseData": {"results":
         [{"unescapedUrl": "url_to_the_image"}]}}"""
     self.mock_response(self._google_url, json)
     result_url = fetchart.google_art(album)
     self.assertEqual(result_url, 'url_to_the_image')
コード例 #2
0
 def test_local_only_gets_fs_image(self):
     _common.touch(os.path.join(self.dpath, 'art.jpg'))
     album = _common.Bag(mb_albumid=self.MBID, asin=self.ASIN)
     artpath = self.plugin.art_for_album(album, [self.dpath],
                                         local_only=True)
     self.assertEqual(artpath, os.path.join(self.dpath, 'art.jpg'))
     self.assertEqual(len(responses.calls), 0)
コード例 #3
0
ファイル: test_art.py プロジェクト: Lugoues/beets
 def test_main_interface_uses_caa_when_mbid_available(self):
     mock_retrieve = MockUrlRetrieve('image/jpeg')
     fetchart.urllib.urlretrieve = mock_retrieve
     album = _common.Bag(mb_albumid='releaseid', asin='xxxx')
     artpath = fetchart.art_for_album(album, None)
     self.assertNotEqual(artpath, None)
     self.assertTrue('coverartarchive.org' in mock_retrieve.fetched)
コード例 #4
0
ファイル: test_art.py プロジェクト: zhang-xun/beets
 def test_main_interface_uses_caa_when_mbid_available(self):
     self.mock_response(self.CAA_URL)
     album = _common.Bag(mb_albumid=self.MBID, asin=self.ASIN)
     artpath = fetchart.art_for_album(album, None)
     self.assertNotEqual(artpath, None)
     self.assertEqual(len(responses.calls), 1)
     self.assertEqual(responses.calls[0].request.url, self.CAA_URL)
コード例 #5
0
ファイル: test_art.py プロジェクト: Lugoues/beets
 def test_local_only_does_not_access_network(self):
     mock_retrieve = MockUrlRetrieve('image/jpeg')
     fetchart.urllib.urlretrieve = mock_retrieve
     album = _common.Bag(mb_albumid='releaseid', asin='xxxx')
     artpath = fetchart.art_for_album(album, [self.dpath], local_only=True)
     self.assertEqual(artpath, None)
     self.assertFalse(self.urlopen_called)
     self.assertFalse(mock_retrieve.fetched)
コード例 #6
0
ファイル: test_art.py プロジェクト: Lugoues/beets
 def test_local_only_gets_fs_image(self):
     _common.touch(os.path.join(self.dpath, 'a.jpg'))
     mock_retrieve = MockUrlRetrieve('image/jpeg')
     fetchart.urllib.urlretrieve = mock_retrieve
     album = _common.Bag(mb_albumid='releaseid', asin='xxxx')
     artpath = fetchart.art_for_album(album, [self.dpath], local_only=True)
     self.assertEqual(artpath, os.path.join(self.dpath, 'a.jpg'))
     self.assertFalse(self.urlopen_called)
     self.assertFalse(mock_retrieve.fetched)
コード例 #7
0
ファイル: test_art.py プロジェクト: surajit-techie/beets
 def test_aao_scraper_finds_image(self):
     body = """
     <br />
     <a href="TARGET_URL" title="View larger image"
        class="thickbox" style="color: #7E9DA2; text-decoration:none;">
     <img src="http://www.albumart.org/images/zoom-icon.jpg"
          alt="View larger image" width="17" height="15"  border="0"/></a>
     """
     self.mock_response(self.AAO_URL, body)
     album = _common.Bag(asin=self.ASIN)
     res = fetchart.aao_art(album)
     self.assertEqual(list(res)[0], 'TARGET_URL')
コード例 #8
0
ファイル: test_art.py プロジェクト: zhang-xun/beets
 def test_main_interface_returns_amazon_art(self):
     self.mock_response(self.AMAZON_URL)
     album = _common.Bag(asin=self.ASIN)
     artpath = fetchart.art_for_album(album, None)
     self.assertNotEqual(artpath, None)
コード例 #9
0
 def test_google_art_dont_finds_image(self):
     album = _common.Bag(albumartist="some artist", album="some album")
     json = """bla blup"""
     self.mock_response(self._google_url, json)
     result_url = self.source.get(album)
     self.assertEqual(list(result_url), [])
コード例 #10
0
ファイル: test_art.py プロジェクト: Lugoues/beets
 def test_main_interface_falls_back_to_aao(self):
     fetchart.urllib.urlretrieve = MockUrlRetrieve('text/html')
     album = _common.Bag(asin='xxxx')
     fetchart.art_for_album(album, [self.dpath])
     self.assertTrue(self.urlopen_called)
コード例 #11
0
ファイル: test_art.py プロジェクト: zhang-xun/beets
 def test_main_interface_gives_precedence_to_fs_art(self):
     _common.touch(os.path.join(self.dpath, 'art.jpg'))
     self.mock_response(self.AMAZON_URL)
     album = _common.Bag(asin=self.ASIN)
     artpath = fetchart.art_for_album(album, [self.dpath])
     self.assertEqual(artpath, os.path.join(self.dpath, 'art.jpg'))
コード例 #12
0
ファイル: test_art.py プロジェクト: Lugoues/beets
 def test_main_interface_falls_back_to_amazon(self):
     fetchart.urllib.urlretrieve = MockUrlRetrieve('image/jpeg')
     album = _common.Bag(asin='xxxx')
     artpath = fetchart.art_for_album(album, [self.dpath])
     self.assertNotEqual(artpath, None)
     self.assertFalse(artpath.startswith(self.dpath))
コード例 #13
0
ファイル: test_art.py プロジェクト: Lugoues/beets
 def test_main_interface_tries_amazon_before_aao(self):
     fetchart.urllib.urlretrieve = MockUrlRetrieve('image/jpeg')
     album = _common.Bag(asin='xxxx')
     fetchart.art_for_album(album, [self.dpath])
     self.assertFalse(self.urlopen_called)
コード例 #14
0
ファイル: test_art.py プロジェクト: surajit-techie/beets
 def test_aao_scraper_returns_no_result_when_no_image_present(self):
     self.mock_response(self.AAO_URL, 'blah blah')
     album = _common.Bag(asin=self.ASIN)
     res = fetchart.aao_art(album)
     self.assertEqual(list(res), [])
コード例 #15
0
ファイル: test_art.py プロジェクト: Lugoues/beets
 def test_main_interface_gives_precedence_to_fs_art(self):
     _common.touch(os.path.join(self.dpath, 'a.jpg'))
     fetchart.urllib.urlretrieve = MockUrlRetrieve('image/jpeg')
     album = _common.Bag(asin='xxxx')
     artpath = fetchart.art_for_album(album, [self.dpath])
     self.assertEqual(artpath, os.path.join(self.dpath, 'a.jpg'))
コード例 #16
0
ファイル: test_art.py プロジェクト: Lugoues/beets
 def test_main_interface_returns_amazon_art(self):
     fetchart.urllib.urlretrieve = MockUrlRetrieve('image/jpeg')
     album = _common.Bag(asin='xxxx')
     artpath = fetchart.art_for_album(album, None)
     self.assertNotEqual(artpath, None)
コード例 #17
0
ファイル: test_art.py プロジェクト: zhang-xun/beets
 def test_local_only_does_not_access_network(self):
     album = _common.Bag(mb_albumid=self.MBID, asin=self.ASIN)
     artpath = fetchart.art_for_album(album, [self.dpath], local_only=True)
     self.assertEqual(artpath, None)
     self.assertEqual(len(responses.calls), 0)
コード例 #18
0
ファイル: test_art.py プロジェクト: zhang-xun/beets
 def test_main_interface_falls_back_to_amazon(self):
     self.mock_response(self.AMAZON_URL)
     album = _common.Bag(asin=self.ASIN)
     artpath = fetchart.art_for_album(album, [self.dpath])
     self.assertNotEqual(artpath, None)
     self.assertFalse(artpath.startswith(self.dpath))
コード例 #19
0
ファイル: test_art.py プロジェクト: zhang-xun/beets
 def test_main_interface_falls_back_to_aao(self):
     self.mock_response(self.AMAZON_URL, content_type='text/html')
     album = _common.Bag(asin=self.ASIN)
     fetchart.art_for_album(album, [self.dpath])
     self.assertEqual(responses.calls[-1].request.url, self.AAO_URL)
コード例 #20
0
ファイル: test_art.py プロジェクト: zhang-xun/beets
 def test_main_interface_tries_amazon_before_aao(self):
     self.mock_response(self.AMAZON_URL)
     album = _common.Bag(asin=self.ASIN)
     fetchart.art_for_album(album, [self.dpath])
     self.assertEqual(len(responses.calls), 1)
     self.assertEqual(responses.calls[0].request.url, self.AMAZON_URL)
コード例 #21
0
ファイル: test_art.py プロジェクト: Lugoues/beets
 def test_main_interface_returns_none_for_missing_asin_and_path(self):
     album = _common.Bag()
     artpath = fetchart.art_for_album(album, None)
     self.assertEqual(artpath, None)
コード例 #22
0
ファイル: test_art.py プロジェクト: zhang-xun/beets
 def test_google_art_dont_finds_image(self):
     album = _common.Bag(albumartist="some artist", album="some album")
     json = """bla blup"""
     self.mock_response(self._google_url, json)
     result_url = fetchart.google_art(album)
     self.assertEqual(result_url, None)