fix python 2.6 support

This commit is contained in:
Alexis Metaireau 2012-03-11 17:26:59 +01:00
commit 3cb18303f6

View file

@ -3,11 +3,12 @@ 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):
@ -74,25 +75,31 @@ class TestPage(TestCase):
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