mirror of
https://github.com/getpelican/pelican.git
synced 2025-10-15 20:28:56 +02:00
Makes DEFAULT_DATE accept string dates; fixes #1464
This commit is contained in:
parent
2ceeb88c63
commit
3f2d89c9d6
3 changed files with 15 additions and 1 deletions
|
|
@ -61,6 +61,8 @@ Setting name (followed by default value, if any)
|
|||
If ``'fs'``, Pelican will use the file system
|
||||
timestamp information (mtime) if it can't get
|
||||
date information from the metadata.
|
||||
If given any other string, it will be parsed by the same method
|
||||
as article metadata.
|
||||
If set to a tuple object, the default datetime object will instead
|
||||
be generated by passing the tuple to the
|
||||
``datetime.datetime`` constructor.
|
||||
|
|
|
|||
|
|
@ -607,7 +607,10 @@ def default_metadata(settings=None, process=None):
|
|||
metadata['category'] = value
|
||||
if settings.get('DEFAULT_DATE', None) and \
|
||||
settings['DEFAULT_DATE'] != 'fs':
|
||||
metadata['date'] = SafeDatetime(*settings['DEFAULT_DATE'])
|
||||
if isinstance(settings['DEFAULT_DATE'], six.string_types):
|
||||
metadata['date'] = get_date(settings['DEFAULT_DATE'])
|
||||
else:
|
||||
metadata['date'] = SafeDatetime(*settings['DEFAULT_DATE'])
|
||||
return metadata
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -359,6 +359,15 @@ class RstReaderTest(ReaderTest):
|
|||
|
||||
self.assertDictHasSubset(page.metadata, expected)
|
||||
|
||||
def test_default_date_formats(self):
|
||||
tuple_date = self.read_file(path='article.rst',
|
||||
DEFAULT_DATE=(2012, 5, 1))
|
||||
string_date = self.read_file(path='article.rst',
|
||||
DEFAULT_DATE='2012-05-01')
|
||||
|
||||
self.assertEqual(tuple_date.metadata['date'],
|
||||
string_date.metadata['date'])
|
||||
|
||||
|
||||
@unittest.skipUnless(readers.Markdown, "markdown isn't installed")
|
||||
class MdReaderTest(ReaderTest):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue