42 lines
1.2 KiB
Python
42 lines
1.2 KiB
Python
import unittest
|
|
import os
|
|
import locale
|
|
import logging
|
|
import pdf
|
|
|
|
from tempfile import mkdtemp
|
|
from pelican import Pelican
|
|
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):
|
|
import pdf
|
|
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'))
|