mirror of
https://github.com/getpelican/pelican.git
synced 2025-10-15 20:28:56 +02:00
fix python 2.6 support
This commit is contained in:
parent
d42b6d9ad7
commit
3cb18303f6
1 changed files with 18 additions and 11 deletions
|
|
@ -3,18 +3,19 @@ from __future__ import with_statement
|
||||||
try:
|
try:
|
||||||
from unittest2 import TestCase, skip
|
from unittest2 import TestCase, skip
|
||||||
except ImportError, e:
|
except ImportError, e:
|
||||||
from unittest import TestCase, skip
|
from unittest import TestCase, skip # NOQA
|
||||||
|
|
||||||
from pelican.contents import Page
|
from pelican.contents import Page
|
||||||
from pelican.settings import _DEFAULT_CONFIG
|
from pelican.settings import _DEFAULT_CONFIG
|
||||||
|
|
||||||
|
|
||||||
class TestPage(TestCase):
|
class TestPage(TestCase):
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(TestPage, self).setUp()
|
super(TestPage, self).setUp()
|
||||||
self.page_kwargs = {
|
self.page_kwargs = {
|
||||||
'content': 'content',
|
'content': 'content',
|
||||||
'metadata':{
|
'metadata': {
|
||||||
'title': 'foo bar',
|
'title': 'foo bar',
|
||||||
'author': 'Blogger',
|
'author': 'Blogger',
|
||||||
},
|
},
|
||||||
|
|
@ -72,32 +73,38 @@ class TestPage(TestCase):
|
||||||
"""
|
"""
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from sys import platform
|
from sys import platform
|
||||||
dt = datetime(2015,9,13)
|
dt = datetime(2015, 9, 13)
|
||||||
# make a deep copy of page_kawgs
|
# make a deep copy of page_kawgs
|
||||||
page_kwargs = {key:self.page_kwargs[key] for key in self.page_kwargs}
|
page_kwargs = dict([(key, self.page_kwargs[key]) for key in
|
||||||
|
self.page_kwargs])
|
||||||
for key in page_kwargs:
|
for key in page_kwargs:
|
||||||
if not isinstance(page_kwargs[key], dict): break
|
if not isinstance(page_kwargs[key], dict):
|
||||||
page_kwargs[key] = {subkey:page_kwargs[key][subkey] for subkey in page_kwargs[key]}
|
break
|
||||||
|
page_kwargs[key] = dict([(subkey, page_kwargs[key][subkey])
|
||||||
|
for subkey in page_kwargs[key]])
|
||||||
# set its date to dt
|
# set its date to dt
|
||||||
page_kwargs['metadata']['date'] = dt
|
page_kwargs['metadata']['date'] = dt
|
||||||
page = Page( **page_kwargs)
|
page = Page(**page_kwargs)
|
||||||
|
|
||||||
self.assertEqual(page.locale_date,
|
self.assertEqual(page.locale_date,
|
||||||
unicode(dt.strftime(_DEFAULT_CONFIG['DEFAULT_DATE_FORMAT']), 'utf-8'))
|
unicode(dt.strftime(_DEFAULT_CONFIG['DEFAULT_DATE_FORMAT']),
|
||||||
|
'utf-8'))
|
||||||
|
|
||||||
|
page_kwargs['settings'] = dict([(x, _DEFAULT_CONFIG[x]) for x in
|
||||||
|
_DEFAULT_CONFIG])
|
||||||
|
|
||||||
page_kwargs['settings'] = {x:_DEFAULT_CONFIG[x] for x in _DEFAULT_CONFIG}
|
|
||||||
# I doubt this can work on all platforms ...
|
# I doubt this can work on all platforms ...
|
||||||
if platform == "win32":
|
if platform == "win32":
|
||||||
locale = 'jpn'
|
locale = 'jpn'
|
||||||
else:
|
else:
|
||||||
locale = 'ja_JP.utf8'
|
locale = 'ja_JP.utf8'
|
||||||
page_kwargs['settings']['DATE_FORMATS'] = {'jp':(locale,'%Y-%m-%d(%a)')}
|
page_kwargs['settings']['DATE_FORMATS'] = {'jp': (locale,
|
||||||
|
'%Y-%m-%d(%a)')}
|
||||||
page_kwargs['metadata']['lang'] = 'jp'
|
page_kwargs['metadata']['lang'] = 'jp'
|
||||||
|
|
||||||
import locale as locale_module
|
import locale as locale_module
|
||||||
try:
|
try:
|
||||||
page = Page( **page_kwargs)
|
page = Page(**page_kwargs)
|
||||||
self.assertEqual(page.locale_date, u'2015-09-13(\u65e5)')
|
self.assertEqual(page.locale_date, u'2015-09-13(\u65e5)')
|
||||||
# above is unicode in Japanese: 2015-09-13(“ú)
|
# above is unicode in Japanese: 2015-09-13(“ú)
|
||||||
except locale_module.Error:
|
except locale_module.Error:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue