示例#1
0
    def zip_format(format_):
        def pretty_file_name(book):
            return "%s/%s.%s" % (
                book.extra_info['author'],
                book.slug,
                format_)

        field_name = "%s_file" % format_
        books = Book.objects.filter(parent=None).exclude(**{field_name: ""})
        paths = [(pretty_file_name(b), getattr(b, field_name).path) for b in books.iterator()]
        return create_zip(paths, app_settings.FORMAT_ZIPS[format_])
示例#2
0
    def test_zip_audiobooks(self):
        paths = [
            (None, join(dirname(__file__), "files/fraszka-do-anusie.xml")),
            (None, join(dirname(__file__), "files/fraszki.xml")),
            ]

        url = utils.create_zip(paths, 'test-zip-slug')
        self.assertEqual("zip/test-zip-slug.zip", url)
        self.assertTrue(exists(join(settings.MEDIA_ROOT, url)))

        utils.remove_zip('test-zip-slug')
        self.assertFalse(exists(join(settings.MEDIA_ROOT, url)))
示例#3
0
    def test_zip_audiobooks(self):
        paths = [
            (None, join(dirname(__file__), "files/fraszka-do-anusie.xml")),
            (None, join(dirname(__file__), "files/fraszki.xml")),
        ]

        url = utils.create_zip(paths, 'test-zip-slug')
        self.assertEqual("zip/test-zip-slug.zip", url)
        self.assertTrue(exists(join(settings.MEDIA_ROOT, url)))

        utils.remove_zip('test-zip-slug')
        self.assertFalse(exists(join(settings.MEDIA_ROOT, url)))
示例#4
0
 def zip_audiobooks(self, format_):
     bm = BookMedia.objects.filter(book=self, type=format_)
     paths = map(lambda bm: (None, bm.file.path), bm)
     return create_zip(paths, "%s_%s" % (self.slug, format_))
示例#5
0
 def zip_audiobooks(self, format_):
     bm = BookMedia.objects.filter(book=self, type=format_)
     paths = map(lambda bm: (None, bm.file.path), bm)
     return create_zip(paths, "%s_%s" % (self.slug, format_))