Test for sync tcp and pipe connections
This commit is contained in:
parent
eb5e00fd1b
commit
b13a446d6c
@ -34,6 +34,7 @@ static int completed_pingers = 0;
|
|||||||
#define BUFSIZE 10240
|
#define BUFSIZE 10240
|
||||||
|
|
||||||
static char PING[] = "PING\n";
|
static char PING[] = "PING\n";
|
||||||
|
static int pinger_on_connect_count;
|
||||||
|
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
@ -133,6 +134,8 @@ static void pinger_read_cb(uv_stream_t* stream, ssize_t nread, uv_buf_t buf) {
|
|||||||
static void pinger_on_connect(uv_connect_t *req, int status) {
|
static void pinger_on_connect(uv_connect_t *req, int status) {
|
||||||
pinger_t *pinger = (pinger_t*)req->handle->data;
|
pinger_t *pinger = (pinger_t*)req->handle->data;
|
||||||
|
|
||||||
|
pinger_on_connect_count++;
|
||||||
|
|
||||||
ASSERT(status == 0);
|
ASSERT(status == 0);
|
||||||
|
|
||||||
pinger_write_ping(pinger);
|
pinger_write_ping(pinger);
|
||||||
@ -161,6 +164,9 @@ static void tcp_pinger_v6_new() {
|
|||||||
r = uv_tcp_connect6(&pinger->connect_req, &pinger->tcp, server_addr,
|
r = uv_tcp_connect6(&pinger->connect_req, &pinger->tcp, server_addr,
|
||||||
pinger_on_connect);
|
pinger_on_connect);
|
||||||
ASSERT(!r);
|
ASSERT(!r);
|
||||||
|
|
||||||
|
/* Synchronous connect callbacks are not allowed. */
|
||||||
|
ASSERT(pinger_on_connect_count == 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -180,8 +186,12 @@ static void tcp_pinger_new() {
|
|||||||
|
|
||||||
/* We are never doing multiple reads/connects at a time anyway. */
|
/* We are never doing multiple reads/connects at a time anyway. */
|
||||||
/* so these handles can be pre-initialized. */
|
/* so these handles can be pre-initialized. */
|
||||||
r = uv_tcp_connect(&pinger->connect_req, &pinger->tcp, server_addr, pinger_on_connect);
|
r = uv_tcp_connect(&pinger->connect_req, &pinger->tcp, server_addr,
|
||||||
|
pinger_on_connect);
|
||||||
ASSERT(!r);
|
ASSERT(!r);
|
||||||
|
|
||||||
|
/* Synchronous connect callbacks are not allowed. */
|
||||||
|
ASSERT(pinger_on_connect_count == 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -201,8 +211,12 @@ static void pipe_pinger_new() {
|
|||||||
/* We are never doing multiple reads/connects at a time anyway. */
|
/* We are never doing multiple reads/connects at a time anyway. */
|
||||||
/* so these handles can be pre-initialized. */
|
/* so these handles can be pre-initialized. */
|
||||||
|
|
||||||
r = uv_pipe_connect(&pinger->connect_req, &pinger->pipe, TEST_PIPENAME, pinger_on_connect);
|
r = uv_pipe_connect(&pinger->connect_req, &pinger->pipe, TEST_PIPENAME,
|
||||||
|
pinger_on_connect);
|
||||||
ASSERT(!r);
|
ASSERT(!r);
|
||||||
|
|
||||||
|
/* Synchronous connect callbacks are not allowed. */
|
||||||
|
ASSERT(pinger_on_connect_count == 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user