libtests: add a wait_ms() function
authorDaniel Stenberg <daniel@haxx.se>
Fri, 9 May 2014 14:48:11 +0000 (16:48 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Fri, 9 May 2014 14:50:42 +0000 (16:50 +0200)
This allows a libcurl test to portably sleep for a given number of
milliseconds.

tests/libtest/first.c
tests/libtest/test.h

index 9ab7dc7..5851faf 100644 (file)
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2011, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -59,6 +59,15 @@ int select_wrapper(int nfds, fd_set *rd, fd_set *wr, fd_set *exc,
   return select(nfds, rd, wr, exc, tv);
 }
 
+void wait_ms(int ms)
+{
+  struct timeval t;
+  t.tv_sec = ms/1000;
+  ms -= (int)t.tv_sec * 1000;
+  t.tv_usec = ms * 1000;
+  select_wrapper(0, NULL, NULL , NULL, &t);
+}
+
 char *libtest_arg2=NULL;
 char *libtest_arg3=NULL;
 int test_argc;
index 5de8c7c..4186c4f 100644 (file)
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -58,6 +58,8 @@ extern struct timeval tv_test_start; /* for test timing */
 extern int select_wrapper(int nfds, fd_set *rd, fd_set *wr, fd_set *exc,
                           struct timeval *tv);
 
+extern void wait_ms(int ms); /* wait this many milliseconds */
+
 extern int test(char *URL); /* the actual test function provided by each
                                individual libXXX.c file */