Fix locale.format_date on python 3.
There's probably more work to be done on this largely-untested code, but this was the case I could find by grepping for stray references to `long`.
This commit is contained in:
parent
1a1b0498e9
commit
8fdd57d272
|
@ -43,6 +43,7 @@ from __future__ import absolute_import, division, print_function, with_statement
|
|||
|
||||
import csv
|
||||
import datetime
|
||||
import numbers
|
||||
import os
|
||||
import re
|
||||
|
||||
|
@ -287,7 +288,7 @@ class Locale(object):
|
|||
"""
|
||||
if self.code.startswith("ru"):
|
||||
relative = False
|
||||
if type(date) in (int, long, float):
|
||||
if isinstance(date, numbers.Real):
|
||||
date = datetime.datetime.utcfromtimestamp(date)
|
||||
now = datetime.datetime.utcnow()
|
||||
if date > now:
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
from __future__ import absolute_import, division, print_function, with_statement
|
||||
|
||||
import datetime
|
||||
import os
|
||||
import tornado.locale
|
||||
from tornado.escape import utf8
|
||||
|
@ -48,3 +49,11 @@ class LocaleDataTest(unittest.TestCase):
|
|||
self.assertTrue(isinstance(name, unicode_type))
|
||||
self.assertEqual(name, u('Espa\u00f1ol'))
|
||||
self.assertEqual(utf8(name), b'Espa\xc3\xb1ol')
|
||||
|
||||
|
||||
class EnglishTest(unittest.TestCase):
|
||||
def test_format_date(self):
|
||||
locale = tornado.locale.get('en_US')
|
||||
date = datetime.datetime(2013, 4, 28, 18, 35)
|
||||
self.assertEqual(locale.format_date(date, full_format=True),
|
||||
'April 28, 2013 at 6:35 pm')
|
||||
|
|
Loading…
Reference in New Issue