コード例 #1
0
ファイル: test_utils.py プロジェクト: 32x32/fufufuu
    def test_process_images(self):
        initial_page_count = MangaPage.objects.filter(manga=self.manga).count()

        content = self.create_test_image_file().getvalue()
        file1 = SimpleUploadedFile('test1.png', content)
        file2 = SimpleUploadedFile('test2.png', content)
        errors = process_images(self.manga, [file1, file2], self.user)
        self.assertEqual([], errors)

        actual_page_count = MangaPage.objects.filter(manga=self.manga).count()
        self.assertEqual(initial_page_count+2, actual_page_count)
コード例 #2
0
ファイル: views.py プロジェクト: 32x32/fufufuu
    def post(self, request, id, slug):
        manga = self.get_manga_for_edit(id)
        if 'zipfile' in request.FILES:
            errors = process_zipfile(manga, request.FILES.get('zipfile'), request.user)
        elif 'images' in request.FILES:
            errors = process_images(manga, request.FILES.getlist('images', []), request.user)
        else:
            raise Http404

        if errors:
            messages.error(request, '\n'.join(errors))

        return redirect('manga.edit.images', id=manga.id, slug=manga.slug)
コード例 #3
0
ファイル: test_utils.py プロジェクト: 32x32/fufufuu
    def test_process_images_page_limit(self):
        mp_list = []
        for i in range(1, MANGA_PAGE_LIMIT+1):
            mp_list.append(MangaPage(
                manga=self.manga,
                page=i,
                name='{}.jpg'.format(i),
                double=False,
            ))
        MangaPage.objects.bulk_create(mp_list)

        file = SimpleUploadedFile('test.jpg', b'content of image')
        errors = process_images(self.manga, [file], self.user)
        self.assertEqual(errors, ['There are currently 100 images; All other uploaded image files were ignored.'])
コード例 #4
0
ファイル: test_utils.py プロジェクト: 32x32/fufufuu
 def test_process_images_unsupported_format(self):
     image_file = self.create_test_image_file(format='GIF')
     file = SimpleUploadedFile('test.gif', image_file.getvalue())
     errors = process_images(self.manga, [file], self.user)
     self.assertEqual(errors, ['test.gif is not a supported image type.'])
コード例 #5
0
ファイル: test_utils.py プロジェクト: 32x32/fufufuu
 def test_process_images_max_dimensions(self):
     image_file = self.create_test_image_file(width=8001, height=1200, format='JPEG')
     file = SimpleUploadedFile('test.jpg', image_file.getvalue())
     errors = process_images(self.manga, [file], self.user)
     self.assertEqual(errors, ['test.jpg is larger than 8000x8000 pixels.'])
コード例 #6
0
ファイル: test_utils.py プロジェクト: 32x32/fufufuu
 def test_process_images_invalid_image(self):
     file_content = '0'
     file = SimpleUploadedFile('test.jpg', bytes(file_content, 'utf-8'))
     errors = process_images(self.manga, [file], self.user)
     self.assertEqual(errors, ['test.jpg failed to verify as an image file.'])
コード例 #7
0
ファイル: test_utils.py プロジェクト: 32x32/fufufuu
 def test_process_images_max_file_size(self):
     file_content = '0' * (MAX_IMAGE_FILE_SIZE+1)
     file = SimpleUploadedFile('test.jpg', bytes(file_content, 'utf-8'))
     errors = process_images(self.manga, [file], self.user)
     self.assertEqual(errors, ['test.jpg is over 10MB in size.'])
コード例 #8
0
ファイル: test_utils.py プロジェクト: 32x32/fufufuu
 def test_process_image_empty(self):
     self.assertEqual([], process_images(self.manga, [], self.user))