mirror of
https://github.com/beetbox/beets.git
synced 2025-12-08 01:23:09 +01:00
Update thumbnails tests
Still missing: testing the specific output of GioURI.uri()
This commit is contained in:
parent
4b349771ff
commit
be5f80d51a
1 changed files with 20 additions and 5 deletions
|
|
@ -24,7 +24,8 @@ from test._common import unittest
|
||||||
from test.helper import TestHelper
|
from test.helper import TestHelper
|
||||||
|
|
||||||
from beetsplug.thumbnails import (ThumbnailsPlugin, NORMAL_DIR, LARGE_DIR,
|
from beetsplug.thumbnails import (ThumbnailsPlugin, NORMAL_DIR, LARGE_DIR,
|
||||||
write_metadata_im, write_metadata_pil)
|
write_metadata_im, write_metadata_pil,
|
||||||
|
PathlibURI, GioURI)
|
||||||
|
|
||||||
|
|
||||||
class ThumbnailsTest(unittest.TestCase, TestHelper):
|
class ThumbnailsTest(unittest.TestCase, TestHelper):
|
||||||
|
|
@ -37,8 +38,10 @@ class ThumbnailsTest(unittest.TestCase, TestHelper):
|
||||||
@patch('beetsplug.thumbnails.BaseDirectory')
|
@patch('beetsplug.thumbnails.BaseDirectory')
|
||||||
def test_thumbnail_filter_name(self, mock_basedir):
|
def test_thumbnail_filter_name(self, mock_basedir):
|
||||||
filename = b"/home/jens/photos/me.png"
|
filename = b"/home/jens/photos/me.png"
|
||||||
thumbnail = ThumbnailsPlugin.thumbnail_file_name(filename)
|
plug = ThumbnailsPlugin()
|
||||||
self.assertEqual(thumbnail, b"c6ee772d9e49320e97ec29a7eb5b1697.png")
|
plug.get_uri = PathlibURI().uri
|
||||||
|
self.assertEqual(plug.thumbnail_file_name(filename),
|
||||||
|
b"c6ee772d9e49320e97ec29a7eb5b1697.png")
|
||||||
|
|
||||||
@patch('beetsplug.thumbnails.util')
|
@patch('beetsplug.thumbnails.util')
|
||||||
def test_write_metadata_im(self, mock_util):
|
def test_write_metadata_im(self, mock_util):
|
||||||
|
|
@ -56,12 +59,14 @@ class ThumbnailsTest(unittest.TestCase, TestHelper):
|
||||||
def test_add_tags(self, mock_stat, _):
|
def test_add_tags(self, mock_stat, _):
|
||||||
plugin = ThumbnailsPlugin()
|
plugin = ThumbnailsPlugin()
|
||||||
plugin.write_metadata = Mock()
|
plugin.write_metadata = Mock()
|
||||||
|
plugin.get_uri = Mock(side_effect=
|
||||||
|
{b"/path/to/cover": "COVER_URI"}.__getitem__)
|
||||||
album = Mock(artpath=b"/path/to/cover")
|
album = Mock(artpath=b"/path/to/cover")
|
||||||
mock_stat.return_value.st_mtime = 12345
|
mock_stat.return_value.st_mtime = 12345
|
||||||
|
|
||||||
plugin.add_tags(album, b"/path/to/thumbnail")
|
plugin.add_tags(album, b"/path/to/thumbnail")
|
||||||
|
|
||||||
metadata = {"Thumb::URI": b"file:///path/to/cover",
|
metadata = {"Thumb::URI": b"COVER_URI",
|
||||||
"Thumb::MTime": "12345"}
|
"Thumb::MTime": "12345"}
|
||||||
plugin.write_metadata.assert_called_once_with(b"/path/to/thumbnail",
|
plugin.write_metadata.assert_called_once_with(b"/path/to/thumbnail",
|
||||||
metadata)
|
metadata)
|
||||||
|
|
@ -71,7 +76,9 @@ class ThumbnailsTest(unittest.TestCase, TestHelper):
|
||||||
@patch('beetsplug.thumbnails.ArtResizer')
|
@patch('beetsplug.thumbnails.ArtResizer')
|
||||||
@patch('beetsplug.thumbnails.has_IM')
|
@patch('beetsplug.thumbnails.has_IM')
|
||||||
@patch('beetsplug.thumbnails.has_PIL')
|
@patch('beetsplug.thumbnails.has_PIL')
|
||||||
def test_check_local_ok(self, mock_pil, mock_im, mock_artresizer, mock_os):
|
@patch('beetsplug.thumbnails.GioURI')
|
||||||
|
def test_check_local_ok(self, mock_giouri, mock_pil, mock_im,
|
||||||
|
mock_artresizer, mock_os):
|
||||||
# test local resizing capability
|
# test local resizing capability
|
||||||
mock_artresizer.shared.local = False
|
mock_artresizer.shared.local = False
|
||||||
plugin = ThumbnailsPlugin()
|
plugin = ThumbnailsPlugin()
|
||||||
|
|
@ -109,6 +116,14 @@ class ThumbnailsTest(unittest.TestCase, TestHelper):
|
||||||
|
|
||||||
self.assertTrue(ThumbnailsPlugin()._check_local_ok())
|
self.assertTrue(ThumbnailsPlugin()._check_local_ok())
|
||||||
|
|
||||||
|
# test URI getter function
|
||||||
|
giouri_inst = mock_giouri.return_value
|
||||||
|
giouri_inst.available = True
|
||||||
|
self.assertEqual(ThumbnailsPlugin().get_uri, giouri_inst.uri)
|
||||||
|
|
||||||
|
giouri_inst.available = False
|
||||||
|
self.assertEqual(ThumbnailsPlugin().get_uri.im_class, PathlibURI)
|
||||||
|
|
||||||
@patch('beetsplug.thumbnails.ThumbnailsPlugin._check_local_ok')
|
@patch('beetsplug.thumbnails.ThumbnailsPlugin._check_local_ok')
|
||||||
@patch('beetsplug.thumbnails.ArtResizer')
|
@patch('beetsplug.thumbnails.ArtResizer')
|
||||||
@patch('beetsplug.thumbnails.util')
|
@patch('beetsplug.thumbnails.util')
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue