def test_thumbnail_for_path(self): user = DummyUser().create_dummy_user() picture_path="koopsite/tests/profile_image.jpg" mini_url = get_thumbnail_url_path(picture_path)[0] self.assertEqual(mini_url, 'koopsite/tests/profile_image_30x24.jpg') mini_url = get_thumbnail_url_path(picture_path, "200x100")[0] self.assertEqual(mini_url, 'koopsite/tests/profile_image_200x100.jpg') os.remove('koopsite/tests/profile_image_30x24.jpg') os.remove('koopsite/tests/profile_image_200x100.jpg')
def test_thumbnail_for_path(self): user = DummyUser().create_dummy_user() picture_path = "koopsite/tests/profile_image.jpg" mini_url = get_thumbnail_url_path(picture_path)[0] self.assertEqual(mini_url, 'koopsite/tests/profile_image_30x24.jpg') mini_url = get_thumbnail_url_path(picture_path, "200x100")[0] self.assertEqual(mini_url, 'koopsite/tests/profile_image_200x100.jpg') os.remove('koopsite/tests/profile_image_30x24.jpg') os.remove('koopsite/tests/profile_image_200x100.jpg')
def test_thumbnail_for_file(self): user = DummyUser().create_dummy_user() picture_path="koopsite/tests/profile_image.jpg" DummyUser().create_dummy_profile(user, picture_path=picture_path) picture = user.userprofile.picture expected_url = '/media/profile_images/1_30x24.jpg' expected_path = os.path.join(MEDIA_ROOT, r"profile_images\1_30x24.jpg") mini_url, mini_path = get_thumbnail_url_path(picture) self.assertEqual(mini_url, expected_url) self.assertEqual(mini_path, expected_path) expected_url = '/media/profile_images/1_200x100.jpg' expected_path = os.path.join(MEDIA_ROOT, r"profile_images\1_200x100.jpg") mini_url, mini_path = get_thumbnail_url_path(picture, "200x100") self.assertEqual(mini_url, expected_url) self.assertEqual(mini_path, expected_path) os.remove('media/profile_images/1.jpg') os.remove('media/profile_images/1_30x24.jpg') os.remove('media/profile_images/1_200x100.jpg')
def test_thumbnail_for_file(self): user = DummyUser().create_dummy_user() picture_path = "koopsite/tests/profile_image.jpg" DummyUser().create_dummy_profile(user, picture_path=picture_path) picture = user.userprofile.picture expected_url = '/media/profile_images/1_30x24.jpg' expected_path = os.path.join(MEDIA_ROOT, r"profile_images\1_30x24.jpg") mini_url, mini_path = get_thumbnail_url_path(picture) self.assertEqual(mini_url, expected_url) self.assertEqual(mini_path, expected_path) expected_url = '/media/profile_images/1_200x100.jpg' expected_path = os.path.join(MEDIA_ROOT, r"profile_images\1_200x100.jpg") mini_url, mini_path = get_thumbnail_url_path(picture, "200x100") self.assertEqual(mini_url, expected_url) self.assertEqual(mini_path, expected_path) os.remove('media/profile_images/1.jpg') os.remove('media/profile_images/1_30x24.jpg') os.remove('media/profile_images/1_200x100.jpg')
def thumbnail(picture, size='30x24'): """ A filter to resize a ImageField on demand, a use case could be: <img src="{{ object.image.url }}" alt="original image"> <img src="{{ object.image|thumbnail }}" alt="image resized to default 104x104 format"> <img src="{{ object.image|thumbnail:200x300 }}" alt="image resized to 200x300"> Original http://www.djangosnippets.org/snippets/955/ :param picture: image object (ImageField instance) or image file path (str) :param size: size for thumbnail :return: thumbnail url """ return get_thumbnail_url_path(picture, size)[0]
def test_thumbnail_for_file_3(self): user = DummyUser().create_dummy_user() # picture_path="koopsite/tests/profile_image_3.jpg" picture_path=os.path.join("koopsite","tests","profile_image_3.jpg") DummyUser().create_dummy_profile(user, picture_path=picture_path) picture = user.userprofile.picture expected_url = '/media/profile_images/1_30x24.jpg' expected_path = os.path.join(MEDIA_ROOT, "profile_images", "1_30x24.jpg") mini_url, mini_path = get_thumbnail_url_path(picture) self.assertEqual(mini_url, expected_url) self.assertEqual(mini_path, expected_path) image = Image.open(expected_path) size = image.size self.assertEqual(size, (30, 16)) image.close() os.remove(os.path.join('media','profile_images','1.jpg')) os.remove(os.path.join('media','profile_images','1_30x24.jpg'))
def test_thumbnail_for_file_3(self): user = DummyUser().create_dummy_user() # picture_path="koopsite/tests/profile_image_3.jpg" picture_path = os.path.join("koopsite", "tests", "profile_image_3.jpg") DummyUser().create_dummy_profile(user, picture_path=picture_path) picture = user.userprofile.picture expected_url = '/media/profile_images/1_30x24.jpg' expected_path = os.path.join(MEDIA_ROOT, "profile_images", "1_30x24.jpg") mini_url, mini_path = get_thumbnail_url_path(picture) self.assertEqual(mini_url, expected_url) self.assertEqual(mini_path, expected_path) image = Image.open(expected_path) size = image.size self.assertEqual(size, (30, 16)) image.close() os.remove(os.path.join('media', 'profile_images', '1.jpg')) os.remove(os.path.join('media', 'profile_images', '1_30x24.jpg'))