aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/sock.c26
-rw-r--r--tests/trantest.h10
2 files changed, 35 insertions, 1 deletions
diff --git a/tests/sock.c b/tests/sock.c
index 81c0eb59..21b12792 100644
--- a/tests/sock.c
+++ b/tests/sock.c
@@ -113,6 +113,32 @@ TestMain("Socket Operations", {
NNG_EINVAL);
});
+ Convey("URL option works", {
+ char url[NNG_MAXADDRLEN];
+ nng_listener l;
+ nng_dialer d;
+ size_t sz;
+
+ So(nng_listener_create(
+ &l, s1, "inproc://url1") == 0);
+ So(nng_dialer_create(
+ &d, s1, "inproc://url2") == 0);
+ memset(url, 0, sizeof(url));
+ sz = sizeof(url);
+ So(nng_listener_getopt(
+ l, nng_optid_url, url, &sz) == 0);
+ So(strcmp(url, "inproc://url1") == 0);
+ sz = sizeof(url);
+ So(nng_dialer_getopt(
+ d, nng_optid_url, url, &sz) == 0);
+ So(strcmp(url, "inproc://url2") == 0);
+
+ Reset({
+ nng_dialer_close(d);
+ nng_listener_close(l);
+ })
+ });
+
Convey("We can apply options before endpoint", {
nng_listener l;
char addr[NNG_MAXADDRLEN];
diff --git a/tests/trantest.h b/tests/trantest.h
index 84b54e34..d4d65eee 100644
--- a/tests/trantest.h
+++ b/tests/trantest.h
@@ -128,6 +128,9 @@ trantest_send_recv(trantest *tt)
nng_msg * send;
nng_msg * recv;
size_t len;
+ nng_pipe p;
+ char url[NNG_MAXADDRLEN];
+ size_t sz;
So(nng_listen(tt->repsock, tt->addr, &l, 0) == 0);
So(l != 0);
@@ -155,8 +158,13 @@ trantest_send_recv(trantest *tt)
So(recv != NULL);
So(nng_msg_len(recv) == strlen("acknowledge"));
So(strcmp(nng_msg_body(recv), "acknowledge") == 0);
+ p = nng_msg_get_pipe(recv);
+ So(p != 0);
+ sz = sizeof (url);
+ So(nng_pipe_getopt(p, nng_optid_url, url, &sz) == 0);
+ So(strcmp(url, tt->addr) == 0);
nng_msg_free(recv);
- })
+ });
}
void
trantest_test_all(const char *addr)