Browse Source

100% coverage for celery.utilitites.iso8601

Ask Solem 12 years ago
parent
commit
98c3838a08
1 changed files with 18 additions and 0 deletions
  1. 18 0
      celery/tests/utilities/test_timeutils.py

+ 18 - 0
celery/tests/utilities/test_timeutils.py

@@ -1,5 +1,7 @@
 from __future__ import absolute_import
 
+import pytz
+
 from datetime import datetime, timedelta
 
 from celery.utils.timeutils import (
@@ -12,9 +14,25 @@ from celery.utils.timeutils import (
     rate,
     remaining,
 )
+from celery.utils.iso8601 import parse_iso8601
 from celery.tests.utils import Case
 
 
+class test_iso8601(Case):
+
+    def test_parse_with_timezone(self):
+        d = datetime.utcnow().replace(tzinfo=pytz.utc)
+        self.assertEqual(parse_iso8601(d.isoformat()), d)
+        # 2013-06-07T20:12:51.775877+00:00
+        iso = d.isoformat()
+        iso1 = iso.replace('+00:00', '-01:00')
+        d1 = parse_iso8601(iso1)
+        self.assertEqual(d1.tzinfo._minutes, -60)
+        iso2 = iso.replace('+00:00', '+01:00')
+        d2 = parse_iso8601(iso2)
+        self.assertEqual(d2.tzinfo._minutes, +60)
+
+
 class test_timeutils(Case):
 
     def test_delta_resolution(self):