"""
return date1 - date2
+def _get_total_seconds(td):
+ return (td.microseconds + (td.seconds + td.days * 24 * 3600) * 1e6) / 1e6
+
def tdiffsec(date1, date2):
""" Returns the date difference ( date1 - date2 ) in seconds,
where date1 and date 2 are datetime objects
"""
diff = tdiff(date1, date2)
- return diff.total_seconds()
+ return _get_total_seconds(diff)
def stabsformat(sdate, dbase = None):
""" Constructs a datetime object from a string date.
from nepi.resources.linux.node import LinuxNode
import os
+import sys
class DummyEC(object):
@property
return wrapped
+def skipIfNotPythonVersion(func):
+ name = func.__name__
+ def wrapped(*args, **kwargs):
+ if sys.version_info < 2.7:
+ print "*** WARNING: Skipping test %s: total_seconds() method doesn't exist\n" % name
+ return
+
+ return func(*args, **kwargs)
+
+ return wrapped
+
--- /dev/null
+#!/usr/bin/env python
+#
+# NEPI, a framework to manage network experiments
+# Copyright (C) 2013 INRIA
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+# Author: Lucia Guevgeozian <lucia.guevgeozian_odizzio@inria.fr>
+
+from test_utils import skipIfNotPythonVersion
+
+import datetime
+import unittest
+
+def _get_total_seconds(td):
+ return (td.microseconds + (td.seconds + td.days * 24 * 3600) * 1e6) / 1e6
+
+class TimeFuncTestCase(unittest.TestCase):
+
+ @skipIfNotPythonVersion
+ def test_total_seconds(self):
+ date = datetime.timedelta(2, 468, 506260)
+ seconds1 = _get_total_seconds(date)
+ seconds2 = date.total_seconds()
+
+ self.assertEquals(seconds1, seconds2)
+
+
+if __name__ == '__main__':
+ unittest.main()
+
+