diff rhodecode/tests/test_libs.py @ 2902:e2b2791d1e7c beta

fixed #597 commits in future get negative age.
author Marcin Kuzminski <marcin@python-works.com>
date Mon, 08 Oct 2012 23:28:38 +0200
parents 620669b2a88b
children 28b85b1b46cf
line wrap: on
line diff
--- a/rhodecode/tests/test_libs.py	Mon Oct 08 23:08:46 2012 +0200
+++ b/rhodecode/tests/test_libs.py	Mon Oct 08 23:28:38 2012 +0200
@@ -129,10 +129,25 @@
         self.assertEqual(age(n - delt(hours=1)), u'1 hour ago')
         self.assertEqual(age(n - delt(hours=24)), u'1 day ago')
         self.assertEqual(age(n - delt(hours=24 * 5)), u'5 days ago')
-        self.assertEqual(age(n - delt(hours=24 * (calendar.mdays[n.month-1] + 2))),
+        self.assertEqual(age(n - delt(hours=24 * (calendar.mdays[n.month - 1] + 2))),
                          u'1 month and 2 days ago')
         self.assertEqual(age(n - delt(hours=24 * 400)), u'1 year and 1 month ago')
 
+    def test_age_in_future(self):
+        import calendar
+        from rhodecode.lib.utils2 import age
+        n = datetime.datetime.now()
+        delt = lambda *args, **kwargs: datetime.timedelta(*args, **kwargs)
+        self.assertEqual(age(n), u'just now')
+        self.assertEqual(age(n + delt(seconds=1)), u'in 1 second')
+        self.assertEqual(age(n + delt(seconds=60 * 2)), u'in 2 minutes')
+        self.assertEqual(age(n + delt(hours=1)), u'in 1 hour')
+        self.assertEqual(age(n + delt(hours=24)), u'in 1 day')
+        self.assertEqual(age(n + delt(hours=24 * 5)), u'in 5 days')
+        self.assertEqual(age(n + delt(hours=24 * (calendar.mdays[n.month - 1] + 2))),
+                         u'in 1 month and 1 days')
+        self.assertEqual(age(n + delt(hours=24 * 400)), u'in 1 year and 1 month')
+
     def test_tag_exctrator(self):
         sample = (
             "hello pta[tag] gog [[]] [[] sda ero[or]d [me =>>< sa]"