def test_render_nonimage(self): """ ``ImageWidget`` renders the file input only, if given a non-image. """ widget = ImageWidget() html = widget.render('fieldname', FieldFile(None, FileField(), 'something.txt')) self.assertHTMLEqual(html, '<input type="file" name="fieldname" value="something.txt" />')
def test_render_nonimage(self): """ ``ImageWidget`` renders the file input only, if given a non-image. """ widget = ImageWidget() html = widget.render('fieldname', FieldFile(None, FileField(), 'something.txt')) self.assertHTMLEqual(html, '<input type="file" name="fieldname" />')
def test_custom_template(self): """ ``ImageWidget`` respects a custom template. """ widget = ImageWidget(template='<div>%(image)s</div>' '<div>%(input)s</div>') html = widget.render('fieldname', ImageFieldFile(None, ImageField(), 'tiny.png')) self.assertTrue(html.startswith('<div><img'))
def test_custom_template(self): """ ``ImageWidget`` respects a custom template. """ widget = ImageWidget(template='<div>%(image)s</div>' '<div>%(input)s</div>') html = widget.render('fieldname', 'tiny.png') self.failUnless(html.startswith('<div><img src="/media/tiny'))
def test_render(self): """ ``ImageWidget`` renders the file input and the image thumb. """ widget = ImageWidget() html = widget.render('fieldname', ImageFieldFile(None, ImageField(), 'tiny.png')) # test only this much of the html, because the remainder will # vary depending on whether we have sorl-thumbnail self.assertTrue('<img' in html) self.assertTrue('/media/tiny' in html)
def test_render(self): """ ``ImageWidget`` renders the file input and the image thumb. """ widget = ImageWidget() html = widget.render('fieldname', ImageFieldFile(None, ImageField(), 'tiny.png')) # test only this much of the html, because the remainder will # vary depending on whether we have sorl-thumbnail self.assertTrue(html.startswith( '<input type="file" name="fieldname" value="tiny.png" />' '<br /><img src="/media/tiny'), html)
def render(self, name, value, attrs=None): """ Wrapper to super class render, providing a "no image" thumbnail when there's no picture, and getting the thumbnail image path if there's. """ if not value: try: value = settings.DAG_NO_IMAGE[self.photo_size] except AttributeError: value = "" else: if isinstance(value, long): try: value = Photo.objects.get(pk=value).image except Photo.DoesNotExist: value = None if value: path_dir = os.path.dirname(value.name) extension = os.path.basename(value.name).split(".")[-1] filename = smart_unicode(os.path.basename(value.name).replace(".%s" % extension, "")) value.name = "%s/cache/%s_%s.%s" % (path_dir, filename, self.photo_size, extension) self.template = self.template % {"photo_label": _("Photo")} return ImageWidget.render(self, name, value, attrs=attrs)