Skip to content

Commit b34beed

Browse files
Merge pull request #125 from kunteng/master
Fix datetime timestamp conversion when datetime is not in local time
2 parents acb7b3a + d370eda commit b34beed

File tree

2 files changed

+7
-7
lines changed

2 files changed

+7
-7
lines changed

algoliasearch/helpers.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,12 @@
2222
THE SOFTWARE.
2323
"""
2424

25+
import calendar
26+
import datetime
27+
import decimal
28+
import json
2529
import sys
2630
import warnings
27-
import json
28-
import decimal
29-
import time
30-
import datetime
3131

3232
try:
3333
from urllib import quote
@@ -102,7 +102,7 @@ def default(self, obj):
102102
return float(obj)
103103
elif isinstance(obj, datetime.datetime):
104104
try:
105-
return int(time.mktime(obj.timetuple()))
105+
return int(calendar.timegm(obj.utctimetuple()))
106106
except:
107107
return 0
108108

tests/test_index.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
from __future__ import unicode_literals
44

55
import os
6-
import time
6+
import calendar
77
from random import randint
88
from decimal import Decimal
99
from datetime import datetime
@@ -111,7 +111,7 @@ def test_encode_datetime(self):
111111
self.index.wait_task(task['taskID'])
112112

113113
res = self.index.get_object(task['objectID'])
114-
self.assertEqual(res['now'], time.mktime(value.timetuple()))
114+
self.assertEqual(res['now'], calendar.timegm(value.utctimetuple()))
115115

116116
def test_synonyms(self):
117117
task = self.index.add_object({'name': '589 Howard St., San Francisco'})

0 commit comments

Comments
 (0)