tests: SocketsTest: Avoid hang forever if test fails

Change-Id: Ia95e216a2ab6d397ab02c828b70f2b95d1671257
This commit is contained in:
Pau Espin 2018-01-15 10:06:32 +01:00
parent cb0fc9b21a
commit 708b8b44ae
1 changed files with 15 additions and 1 deletions

View File

@ -30,10 +30,16 @@
#include "Threads.h"
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <signal.h>
static const int gNumToSend = 10;
static void sigalarm_handler(int foo)
{
printf("FAIL: test did not run successfully\n");
exit(EXIT_FAILURE);
}
void *testReaderIP(void *param)
{
@ -56,6 +62,14 @@ void *testReaderIP(void *param)
int main(int argc, char * argv[] )
{
if (signal(SIGALRM, sigalarm_handler) == SIG_ERR) {
perror("signal");
exit(EXIT_FAILURE);
}
/* If the test takes longer than 2*gNumToSend seconds, abort it */
alarm(2* gNumToSend);
UDPSocket readSocket("127.0.0.1", 0);
UDPSocket socket1("127.0.0.1", 0, "localhost", readSocket.port());