mirror of
https://github.com/getpelican/pelican.git
synced 2025-10-15 20:28:56 +02:00
- use relative . imports in test files - remove the "future with import", since python < 2.6 is not supported
37 lines
848 B
Python
37 lines
848 B
Python
__all__ = [
|
|
'temporary_folder',
|
|
'get_article',
|
|
'unittest',
|
|
]
|
|
|
|
from contextlib import contextmanager
|
|
from tempfile import mkdtemp
|
|
from shutil import rmtree
|
|
|
|
from pelican.contents import Article
|
|
|
|
try:
|
|
import unittest2 as unittest
|
|
except ImportError:
|
|
import unittest
|
|
|
|
|
|
@contextmanager
|
|
def temporary_folder():
|
|
"""creates a temporary folder, return it and delete it afterwards.
|
|
|
|
This allows to do something like this in tests:
|
|
|
|
>>> with temporary_folder() as d:
|
|
# do whatever you want
|
|
"""
|
|
tempdir = mkdtemp()
|
|
yield tempdir
|
|
rmtree(tempdir)
|
|
|
|
|
|
def get_article(title, slug, content, lang, extra_metadata=None):
|
|
metadata = {'slug': slug, 'title': title, 'lang': lang}
|
|
if extra_metadata is not None:
|
|
metadata.update(extra_metadata)
|
|
return Article(content, metadata=metadata)
|