12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- import unittest
- import os
- import locale
- import logging
- import pdf
- from tempfile import mkdtemp
- from pelican import Pelican
- from pelican.readers import MarkdownReader
- from pelican.settings import read_settings
- from shutil import rmtree
- CUR_DIR = os.path.dirname(__file__)
- class TestPdfGeneration(unittest.TestCase):
- def setUp(self, override=None):
- self.temp_path = mkdtemp(prefix='pelicantests.')
- settings = {
- 'PATH': os.path.join(os.path.dirname(CUR_DIR), '..', 'test_data',
- 'content'),
- 'OUTPUT_PATH': self.temp_path,
- 'PLUGINS': [pdf],
- 'LOCALE': locale.normalize('en_US'),
- }
- if override:
- settings.update(override)
- self.settings = read_settings(override=settings)
- pelican = Pelican(settings=self.settings)
- try:
- pelican.run()
- except ValueError:
- logging.warn('Relative links in the form of ' +
- '|filename|images/test.png are not yet handled by ' +
- ' the pdf generator')
- pass
- def tearDown(self):
- rmtree(self.temp_path)
- def test_existence(self):
- assert os.path.exists(os.path.join(self.temp_path, 'pdf',
- 'this-is-a-super-article.pdf'))
- if MarkdownReader.enabled:
- assert os.path.exists(os.path.join(self.temp_path, 'pdf',
- 'a-markdown-powered-article.pdf'))
|