def test_find_loader(self): """ Tests basic usage of find_loader """ Image.loaders = { 'jpeg': [ (0, self.FakeBackend), ], } self.assertEqual(Image.find_loader('jpeg'), self.FakeBackend)
def test_find_loader_priority(self): """ Tests that find_loader gets the backend with the highest priority """ Image.loaders = { 'jpeg': [ (100, self.FakeBackend), (200, self.AnotherFakeBackend), ], } self.assertEqual(Image.find_loader('jpeg'), self.AnotherFakeBackend)
def test_find_loader_with_bad_image_backend(self): """ Tests that find_loader ignores bad backends even if they have a higher priority """ Image.loaders = { 'jpeg': [ (0, self.FakeBackend), (100, self.BadFakeBackend), ], } self.assertEqual(Image.find_loader('jpeg'), self.FakeBackend)
def test_find_loader_priority_same_other_way(self): """ Tests that find_loader picks the last backend when there are multiple backends with the same priority """ Image.loaders = { 'jpeg': [ (0, self.AnotherFakeBackend), (0, self.FakeBackend), ], } self.assertEqual(Image.find_loader('jpeg'), self.FakeBackend)
def test_find_loader_multiple_extensions(self): """ Tests that find_loader works well when multiple extensions are registered """ Image.loaders = { 'jpeg': [ (0, self.FakeBackend), ], 'gif': [ (100, self.AnotherFakeBackend), ], } self.assertEqual(Image.find_loader('jpeg'), self.FakeBackend)