Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Fixed #2163 -- Corrected typo when handling datetimes with timezones …

…in the timesince filter. Thanks, Alex Dedul.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@3186 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
commit ae1234f2a2e6956fe26ca80743e296cff84e08d5 1 parent 239adf8
@malcolmt malcolmt authored
Showing with 7 additions and 2 deletions.
  1. +1 −1  django/utils/timesince.py
  2. +6 −1 tests/othertests/templates.py
View
2  django/utils/timesince.py
@@ -24,7 +24,7 @@ def timesince(d, now=None):
else:
t = time.localtime()
if d.tzinfo:
- tz = LocalTimezone()
+ tz = LocalTimezone(d)
else:
tz = None
now = datetime.datetime(t[0], t[1], t[2], t[3], t[4], t[5], tzinfo=tz)
View
7 tests/othertests/templates.py
@@ -4,6 +4,7 @@
from django import template
from django.template import loader
from django.utils.translation import activate, deactivate, install
+from django.utils.tzinfo import LocalTimezone
from datetime import datetime, timedelta
import traceback
@@ -57,8 +58,9 @@ class OtherClass:
def method(self):
return "OtherClass.method"
-# NOW used by timesince tag tests.
+# NOW and NOW_tz are used by timesince tag tests.
NOW = datetime.now()
+NOW_tz = datetime.now(LocalTimezone(datetime.now()))
# SYNTAX --
# 'template_name': ('template contents', 'context dict', 'expected string output' or Exception class)
@@ -545,6 +547,9 @@ def method(self):
'timesince04' : ('{{ a|timesince:b }}', {'a':NOW + timedelta(days=2), 'b':NOW + timedelta(days=1)}, '1 day'),
'timesince05' : ('{{ a|timesince:b }}', {'a':NOW + timedelta(days=2), 'b':NOW + timedelta(days=2)}, '0 minutes'),
+ # Check that timezone is respected
+ 'timesince06' : ('{{ a|timesince:b }}', {'a':NOW_tz + timedelta(hours=8), 'b':NOW_tz}, '8 hours'),
+
### TIMEUNTIL TAG ##################################################
# Default compare with datetime.now()
'timeuntil01' : ('{{ a|timeuntil }}', {'a':datetime.now()}, '0 minutes'),
Please sign in to comment.
Something went wrong with that request. Please try again.