def test_thumbnail(self): ''' python manage.py test mediafiles.MediaFileTest.test_thumbnail''' image_file = os.path.join( os.path.dirname( os.path.abspath( __file__)), 'fixtures/papi.jpg') g = Gallery() g.save() response = self.upload_file( g.id, image_file ) mediafile = MediaFile.objects.all()[0] from thumbs import cached_thumb ret = cached_thumb( mediafile.data ) response = self.get("gallery_admin_media_thumb", id=g.id ,mid=mediafile.id,query={'width':100, 'height':30,}) self.assertEqual(response['Content-Type'],"image/jpeg" ) import hashlib hash_content = hashlib.md5( response.content).hexdigest() hash_file = hashlib.md5( open( mediafile.thumb_path(size=(100,30))).read() ).hexdigest() self.assertEqual( hash_content,hash_file ) response = self.get("mediafiles_thumbnail",id=mediafile.id, width=100, height=30) hash_content_2 = hashlib.md5( response.content).hexdigest() self.assertEqual( hash_content,hash_content_2) self.assertEqual(self.last_url , mediafile.get_thumbnail_url(size=(100,30) ) ) #: clean image files mediafile.delete()
def thumb(self, size): return cached_thumb(self.data, size)