|
- from django.conf import settings
- from django.core.urlresolvers import reverse
- from django.template import TemplateDoesNotExist
- from django.test import TestCase
-
- from .api import UserFactory
- from core.models import Image
-
-
- __all__ = ['CreateImageTest']
-
-
- class CreateImageTest(TestCase):
- def setUp(self):
- self.user = UserFactory(password='password')
- self.client.login(username=self.user.username, password='password')
-
- def test_get_browser(self):
- response = self.client.get(reverse('core:create-image'))
- self.assertRedirects(response, reverse('core:recent-pins'))
-
- def test_get_xml_http_request(self):
- with self.assertRaises(TemplateDoesNotExist):
- self.client.get(reverse('core:create-image'), HTTP_X_REQUESTED_WITH='XMLHttpRequest')
-
- def test_post(self):
- with open(settings.SITE_ROOT + 'logo.png', mode='rb') as image:
- response = self.client.post(reverse('core:create-image'), {'qqfile': image})
- image = Image.objects.latest('pk')
- self.assertJSONEqual(response.content, {'success': {'id': image.pk}})
-
- def test_post_error(self):
- response = self.client.post(reverse('core:create-image'), {'qqfile': None})
- self.assertJSONEqual(response.content, {
- 'error': {'image': ['This field is required.']}
- })
|