aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/libtest/testutil.c11
-rw-r--r--tests/libtest/testutil.h7
2 files changed, 18 insertions, 0 deletions
diff --git a/tests/libtest/testutil.c b/tests/libtest/testutil.c
index 6acd5a71b..dc0211026 100644
--- a/tests/libtest/testutil.c
+++ b/tests/libtest/testutil.c
@@ -98,6 +98,17 @@ long tutil_tvdiff(struct timeval newer, struct timeval older)
(newer.tv_usec-older.tv_usec)/1000;
}
+/*
+ * Same as tutil_tvdiff but with full usec resolution.
+ *
+ * Returns: the time difference in seconds with subsecond resolution.
+ */
+double tutil_tvdiff_secs(struct timeval newer, struct timeval older)
+{
+ return (double)(newer.tv_sec-older.tv_sec)+
+ (double)(newer.tv_usec-older.tv_usec)/1000000.0;
+}
+
/* return the number of seconds in the given input timeval struct */
long tutil_tvlong(struct timeval t1)
{
diff --git a/tests/libtest/testutil.h b/tests/libtest/testutil.h
index 18bd9e99c..e248c1ebe 100644
--- a/tests/libtest/testutil.h
+++ b/tests/libtest/testutil.h
@@ -56,6 +56,13 @@ struct timeval tutil_tvnow(void);
*/
long tutil_tvdiff(struct timeval t1, struct timeval t2);
+/*
+ * Same as tutil_tvdiff but with full usec resolution.
+ *
+ * Returns: the time difference in seconds with subsecond resolution.
+ */
+double tutil_tvdiff_secs(struct timeval t1, struct timeval t2);
+
long tutil_tvlong(struct timeval t1);