class TestMediaLibraryImageContent(TestCase):
    def setUp(self):
        self.page = Page.objects.create(title="Page")
        self.content = CreatedMediaLibraryImageContent()
        self.content.parent = self.page

    def test_image(self):
        self.content.image = MediaFile.objects.create(file="test.png", type="image")
        self.content.clean()
        self.content.save()

    def test_non_image(self):
        self.content.image = MediaFile.objects.create(file="test.pdf", type="pdf")
        with self.assertRaises(ValidationError):
            self.content.clean()

    def test_str_rep(self):
        self.content.image = MediaFile.objects.create(file="test.png", type="image")
        self.assertEqual(unicode(self.content), u"test.png")

    def test_image_template(self):
        self.content.image = MediaFile.objects.create(file="test.png", type="image")
        self.assertEqual(unicode(self.content), u"test.png")
        self.assertEqual(self.content.render().strip(),
                         '<img style="display:block" src="/media-test-path/test.png">')

    def test_image_template_float_left(self):
        self.content.image = MediaFile.objects.create(file="test.png", type="image")
        self.content.template = "content/image/float_left.html"
        self.assertEqual(unicode(self.content), u"test.png")
        self.assertEqual(self.content.render().strip(),
                         '<img style="display:block; float:left" src="/media-test-path/test.png">')

    def test_image_template_float_right(self):
        self.content.image = MediaFile.objects.create(file="test.png", type="image")
        self.content.template = "content/image/float_right.html"
        self.assertEqual(unicode(self.content), u"test.png")
        self.assertEqual(self.content.render().strip(),
                         '<img style="display:block; float:right" src="/media-test-path/test.png">')
 def setUp(self):
     self.page = Page.objects.create(title="Page")
     self.content = CreatedMediaLibraryImageContent()
     self.content.parent = self.page