nanomsg / nng

nanomsg-next-generation -- light-weight brokerless messaging
https://nng.nanomsg.org
MIT License
3.63k stars 472 forks source link

10.6.8: 90% tests passed, 8 tests failed out of 81 #1648

Closed barracuda156 closed 1 year ago

barracuda156 commented 1 year ago

Once unsupported flag https://github.com/nanomsg/nng/issues/1647 is thrown away, results are as follows:

--->  Testing nng
Executing:  cd "/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_nng/nng/work/build" && ninja test 
[0/1] Running tests...
Test project /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_nng/nng/work/build
      Start  1: nng.core.aio_test
 1/81 Test  #1: nng.core.aio_test ...........................***Timeout 180.05 sec
      Start  2: nng.core.buf_size_test
 2/81 Test  #2: nng.core.buf_size_test ......................   Passed    0.20 sec
      Start  3: nng.core.errors_test
 3/81 Test  #3: nng.core.errors_test ........................   Passed    0.05 sec
      Start  4: nng.core.id_test
 4/81 Test  #4: nng.core.id_test ............................   Passed    0.12 sec
      Start  5: nng.core.list_test
 5/81 Test  #5: nng.core.list_test ..........................   Passed    0.07 sec
      Start  6: nng.core.message_test
 6/81 Test  #6: nng.core.message_test .......................   Passed    0.31 sec
      Start  7: nng.core.reconnect_test
 7/81 Test  #7: nng.core.reconnect_test .....................   Passed    1.37 sec
      Start  8: nng.core.sock_test
 8/81 Test  #8: nng.core.sock_test ..........................   Passed    1.69 sec
      Start  9: nng.core.url_test
 9/81 Test  #9: nng.core.url_test ...........................   Passed    0.28 sec
      Start 10: nng.platform.platform_test
10/81 Test #10: nng.platform.platform_test ..................   Passed    1.11 sec
      Start 11: nng.platform.resolver_test
11/81 Test #11: nng.platform.resolver_test ..................   Passed    0.67 sec
      Start 12: nng.compat.compat.nanomsg.compat_tcp_test
12/81 Test #12: nng.compat.compat.nanomsg.compat_tcp_test ...   Passed    1.36 sec
      Start 13: nng.sp.protocol.bus0.bug1247_test
13/81 Test #13: nng.sp.protocol.bus0.bug1247_test ...........   Passed    0.09 sec
      Start 14: nng.sp.protocol.pair0.pair0_test
14/81 Test #14: nng.sp.protocol.pair0.pair0_test ............   Passed    2.04 sec
      Start 15: nng.sp.protocol.pair1.pair1_test
15/81 Test #15: nng.sp.protocol.pair1.pair1_test ............   Passed    2.96 sec
      Start 16: nng.sp.protocol.pair1.pair1_poly_test
16/81 Test #16: nng.sp.protocol.pair1.pair1_poly_test .......   Passed    1.59 sec
      Start 17: nng.sp.protocol.pipeline0.pull_test
17/81 Test #17: nng.sp.protocol.pipeline0.pull_test .........   Passed    1.33 sec
      Start 18: nng.sp.protocol.pipeline0.push_test
18/81 Test #18: nng.sp.protocol.pipeline0.push_test .........   Passed    2.48 sec
      Start 19: nng.sp.protocol.pubsub0.pub_test
19/81 Test #19: nng.sp.protocol.pubsub0.pub_test ............   Passed    1.34 sec
      Start 20: nng.sp.protocol.pubsub0.sub_test
20/81 Test #20: nng.sp.protocol.pubsub0.sub_test ............   Passed    3.22 sec
      Start 21: nng.sp.protocol.pubsub0.xsub_test
21/81 Test #21: nng.sp.protocol.pubsub0.xsub_test ...........   Passed    1.98 sec
      Start 22: nng.sp.protocol.reqrep0.req_test
22/81 Test #22: nng.sp.protocol.reqrep0.req_test ............***Failed    5.36 sec
      Start 23: nng.sp.protocol.reqrep0.rep_test
23/81 Test #23: nng.sp.protocol.reqrep0.rep_test ............   Passed    2.42 sec
      Start 24: nng.sp.protocol.reqrep0.xrep_test
24/81 Test #24: nng.sp.protocol.reqrep0.xrep_test ...........   Passed    1.84 sec
      Start 25: nng.sp.protocol.reqrep0.xreq_test
25/81 Test #25: nng.sp.protocol.reqrep0.xreq_test ...........   Passed    1.67 sec
      Start 26: nng.sp.protocol.survey0.respond_test
26/81 Test #26: nng.sp.protocol.survey0.respond_test ........   Passed    2.07 sec
      Start 27: nng.sp.protocol.survey0.survey_test
27/81 Test #27: nng.sp.protocol.survey0.survey_test .........***Failed    2.51 sec
      Start 28: nng.sp.protocol.survey0.xrespond_test
28/81 Test #28: nng.sp.protocol.survey0.xrespond_test .......   Passed    1.74 sec
      Start 29: nng.sp.protocol.survey0.xsurvey_test
29/81 Test #29: nng.sp.protocol.survey0.xsurvey_test ........   Passed    1.74 sec
      Start 30: nng.sp.transport.ipc.ipc_test
30/81 Test #30: nng.sp.transport.ipc.ipc_test ...............***Timeout 180.03 sec
      Start 31: nng.sp.transport.tcp.tcp_test
31/81 Test #31: nng.sp.transport.tcp.tcp_test ...............***Failed    1.94 sec
      Start 32: nng.sp.transport.ws.ws_test
32/81 Test #32: nng.sp.transport.ws.ws_test .................   Passed    0.88 sec
      Start 33: nng.supplemental.base64_test
33/81 Test #33: nng.supplemental.base64_test ................   Passed    0.08 sec
      Start 34: nng.supplemental.sha1_test
34/81 Test #34: nng.supplemental.sha1_test ..................   Passed    0.08 sec
      Start 35: nng.supplemental.wssfile_test
35/81 Test #35: nng.supplemental.wssfile_test ...............   Passed    0.03 sec
      Start 36: nng.supplemental.websocket_test
36/81 Test #36: nng.supplemental.websocket_test .............   Passed    0.98 sec
      Start 37: nng.inproc_lat
37/81 Test #37: nng.inproc_lat ..............................   Passed   11.39 sec
      Start 38: nng.inproc_thr
38/81 Test #38: nng.inproc_thr ..............................   Passed    6.86 sec
      Start 39: nng.device
39/81 Test #39: nng.device ..................................   Passed    0.34 sec
      Start 40: nng.files
40/81 Test #40: nng.files ...................................   Passed    0.06 sec
      Start 41: nng.httpclient
41/81 Test #41: nng.httpclient ..............................   Passed    5.22 sec
      Start 42: nng.httpserver
42/81 Test #42: nng.httpserver ..............................   Passed    3.16 sec
      Start 43: nng.inproc
43/81 Test #43: nng.inproc ..................................   Passed    1.57 sec
      Start 44: nng.ipc
44/81 Test #44: nng.ipc .....................................***Failed    1.84 sec
      Start 45: nng.ipcsupp
45/81 Test #45: nng.ipcsupp .................................   Passed    0.09 sec
      Start 46: nng.ipcwinsec
46/81 Test #46: nng.ipcwinsec ...............................   Passed    0.09 sec
      Start 47: nng.multistress
47/81 Test #47: nng.multistress .............................***Timeout  60.02 sec
      Start 48: nng.nonblock
48/81 Test #48: nng.nonblock ................................   Passed   15.13 sec
      Start 49: nng.options
49/81 Test #49: nng.options .................................   Passed    0.05 sec
      Start 50: nng.pipe
50/81 Test #50: nng.pipe ....................................   Passed    0.48 sec
      Start 51: nng.pollfd
51/81 Test #51: nng.pollfd ..................................   Passed    0.51 sec
      Start 52: nng.scalability
52/81 Test #52: nng.scalability .............................   Passed    0.75 sec
      Start 53: nng.stats
53/81 Test #53: nng.stats ...................................   Passed    0.12 sec
      Start 54: nng.synch
54/81 Test #54: nng.synch ...................................   Passed    0.34 sec
      Start 55: nng.tls
55/81 Test #55: nng.tls .....................................   Passed    0.03 sec
      Start 56: nng.tcpsupp
56/81 Test #56: nng.tcpsupp .................................   Passed    0.12 sec
      Start 57: nng.tcp
57/81 Test #57: nng.tcp .....................................   Passed    1.90 sec
      Start 58: nng.tcp6
58/81 Test #58: nng.tcp6 ....................................   Passed    1.80 sec
      Start 59: nng.udp
59/81 Test #59: nng.udp .....................................***Failed    0.10 sec
      Start 60: nng.ws
60/81 Test #60: nng.ws ......................................   Passed    2.03 sec
      Start 61: nng.wss
61/81 Test #61: nng.wss .....................................   Passed    0.03 sec
      Start 62: nng.bus
62/81 Test #62: nng.bus .....................................   Passed    0.35 sec
      Start 63: nng.reqctx
63/81 Test #63: nng.reqctx ..................................   Passed    2.47 sec
      Start 64: nng.reqstress
64/81 Test #64: nng.reqstress ...............................   Passed   30.81 sec
      Start 65: nng.compat_block
65/81 Test #65: nng.compat_block ............................   Passed    0.30 sec
      Start 66: nng.compat_bug777
66/81 Test #66: nng.compat_bug777 ...........................   Passed    0.20 sec
      Start 67: nng.compat_bus
67/81 Test #67: nng.compat_bus ..............................   Passed    0.36 sec
      Start 68: nng.compat_cmsg
68/81 Test #68: nng.compat_cmsg .............................   Passed    0.11 sec
      Start 69: nng.compat_msg
69/81 Test #69: nng.compat_msg ..............................   Passed    0.15 sec
      Start 70: nng.compat_iovec
70/81 Test #70: nng.compat_iovec ............................   Passed    0.10 sec
      Start 71: nng.compat_device
71/81 Test #71: nng.compat_device ...........................   Passed    0.74 sec
      Start 72: nng.compat_pair
72/81 Test #72: nng.compat_pair .............................   Passed    0.09 sec
      Start 73: nng.compat_pipeline
73/81 Test #73: nng.compat_pipeline .........................   Passed    0.17 sec
      Start 74: nng.compat_poll
74/81 Test #74: nng.compat_poll .............................   Passed    0.45 sec
      Start 75: nng.compat_reqrep
75/81 Test #75: nng.compat_reqrep ...........................   Passed    1.14 sec
      Start 76: nng.compat_survey
76/81 Test #76: nng.compat_survey ...........................   Passed    3.09 sec
      Start 77: nng.compat_reqttl
77/81 Test #77: nng.compat_reqttl ...........................   Passed    0.33 sec
      Start 78: nng.compat_shutdown
78/81 Test #78: nng.compat_shutdown .........................   Passed    0.10 sec
      Start 79: nng.compat_surveyttl
79/81 Test #79: nng.compat_surveyttl ........................   Passed    0.36 sec
      Start 80: nng.compat_options
80/81 Test #80: nng.compat_options ..........................   Passed    0.11 sec
      Start 81: nng.cplusplus_pair
81/81 Test #81: nng.cplusplus_pair ..........................   Passed    0.12 sec

90% tests passed, 8 tests failed out of 81

Total Test time (real) = 563.77 sec

The following tests FAILED:
      1 - nng.core.aio_test (Timeout)
     22 - nng.sp.protocol.reqrep0.req_test (Failed)
     27 - nng.sp.protocol.survey0.survey_test (Failed)
     30 - nng.sp.transport.ipc.ipc_test (Timeout)
     31 - nng.sp.transport.tcp.tcp_test (Failed)
     44 - nng.ipc (Failed)
     47 - nng.multistress (Timeout)
     59 - nng.udp (Failed)
Errors while running CTest

Specifically, the following test cases fail:

  req_test.c:83: Check nng_socket_get(req, opt, &b, &sz) fails with Invalid argument... failed
    nng_socket_get(req, opt, &b, &sz): expected Invalid argument (3), got Hunky dory (0)

  survey_test.c:83: Check nng_socket_get(surv, opt, &b, &sz) fails with Invalid argument... failed
    nng_socket_get(surv, opt, &b, &sz): expected Invalid argument (3), got Hunky dory (0)

  ipc_test.c:109: Check nng_listener_start(l, 0) succeeds... failed
    nng_listener_start(l, 0): expected success, got Permission denied (16)
  ipc_test.c:110: Check stat(path, &st) == 0... failed
  ipc_test.c:111: Check (st.st_mode & 0777) == 0444... failed
  ipc_test.c:114: Check nng_listener_set_int(l, NNG_OPT_IPC_PERMISSIONS, 0644) fails with Resource busy... failed
    nng_listener_set_int(l, NNG_OPT_IPC_PERMISSIONS, 0644): expected Resource busy (4), got Hunky dory (0)

  ipc_test.c:132: Check nng_listen(s, addr, &l, 0) succeeds... failed
    nng_listen(s, addr, &l, 0): expected success, got Permission denied (16)
  ipc_test.c:133: Check nng_listener_get_addr(l, NNG_OPT_LOCADDR, &sa) succeeds... failed
    nng_listener_get_addr(l, NNG_OPT_LOCADDR, &sa): expected success, got Entry not found (12)
  ipc_test.c:134: Check sa.s_ipc.sa_family == NNG_AF_IPC... failed
  ipc_test.c:135: Check  == /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_de... failed
  ipc_test.c:137: Check nng_listener_set(l, NNG_OPT_LOCADDR, &sa, sizeof(sa)) fails with Read only resource... failed
    nng_listener_set(l, NNG_OPT_LOCADDR, &sa, sizeof(sa)): expected Read only resource (24), got Entry not found (12)
  ipc_test.c:140: Check nng_listener_set_size(l, NNG_OPT_RECVMAXSZ, z) succeeds... failed
    nng_listener_set_size(l, NNG_OPT_RECVMAXSZ, z): expected success, got Entry not found (12)
  ipc_test.c:142: Check nng_listener_get_size(l, NNG_OPT_RECVMAXSZ, &z) succeeds... failed
    nng_listener_get_size(l, NNG_OPT_RECVMAXSZ, &z): expected success, got Entry not found (12)
  ipc_test.c:143: Check z == 8192... failed
  ipc_test.c:144: Check nng_listener_set_bool(l, NNG_OPT_RAW, true) fails with Not supported... failed

  tcp_test.c:177: Check nng_listener_set_int(l, NNG_OPT_TCP_NODELAY, x) fails with Incorrect type... ok
  tcp_test.c:180: Check nng_listener_set(l, NNG_OPT_TCP_NODELAY, &x, sizeof(x)) fails with Invalid argument... failed
    nng_listener_set(l, NNG_OPT_TCP_NODELAY, &x, sizeof(x)): expected Invalid argument (3), got Hunky dory (0)
barracuda156 commented 1 year ago

UPD. Interestingly, if -DBUILD_SHARED_LIBS=ON is set, results are slightly worse, nng.reqstress times out.

--->  Testing nng
Executing:  cd "/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_nng/nng/work/build" && ninja test 
[0/1] Running tests...
Test project /opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_devel_nng/nng/work/build
      Start  1: nng.core.aio_test
 1/81 Test  #1: nng.core.aio_test ...........................***Timeout 180.04 sec
      Start  2: nng.core.buf_size_test
 2/81 Test  #2: nng.core.buf_size_test ......................   Passed    0.12 sec
      Start  3: nng.core.errors_test
 3/81 Test  #3: nng.core.errors_test ........................   Passed    0.05 sec
      Start  4: nng.core.id_test
 4/81 Test  #4: nng.core.id_test ............................   Passed    0.12 sec
      Start  5: nng.core.list_test
 5/81 Test  #5: nng.core.list_test ..........................   Passed    0.04 sec
      Start  6: nng.core.message_test
 6/81 Test  #6: nng.core.message_test .......................   Passed    0.23 sec
      Start  7: nng.core.reconnect_test
 7/81 Test  #7: nng.core.reconnect_test .....................   Passed    1.27 sec
      Start  8: nng.core.sock_test
 8/81 Test  #8: nng.core.sock_test ..........................   Passed    1.38 sec
      Start  9: nng.core.url_test
 9/81 Test  #9: nng.core.url_test ...........................   Passed    0.26 sec
      Start 10: nng.platform.platform_test
10/81 Test #10: nng.platform.platform_test ..................   Passed    1.02 sec
      Start 11: nng.platform.resolver_test
11/81 Test #11: nng.platform.resolver_test ..................   Passed    0.52 sec
      Start 12: nng.compat.compat.nanomsg.compat_tcp_test
12/81 Test #12: nng.compat.compat.nanomsg.compat_tcp_test ...   Passed    1.20 sec
      Start 13: nng.sp.protocol.bus0.bug1247_test
13/81 Test #13: nng.sp.protocol.bus0.bug1247_test ...........   Passed    0.09 sec
      Start 14: nng.sp.protocol.pair0.pair0_test
14/81 Test #14: nng.sp.protocol.pair0.pair0_test ............   Passed    1.97 sec
      Start 15: nng.sp.protocol.pair1.pair1_test
15/81 Test #15: nng.sp.protocol.pair1.pair1_test ............   Passed    2.59 sec
      Start 16: nng.sp.protocol.pair1.pair1_poly_test
16/81 Test #16: nng.sp.protocol.pair1.pair1_poly_test .......   Passed    1.37 sec
      Start 17: nng.sp.protocol.pipeline0.pull_test
17/81 Test #17: nng.sp.protocol.pipeline0.pull_test .........   Passed    0.92 sec
      Start 18: nng.sp.protocol.pipeline0.push_test
18/81 Test #18: nng.sp.protocol.pipeline0.push_test .........   Passed    1.99 sec
      Start 19: nng.sp.protocol.pubsub0.pub_test
19/81 Test #19: nng.sp.protocol.pubsub0.pub_test ............   Passed    0.94 sec
      Start 20: nng.sp.protocol.pubsub0.sub_test
20/81 Test #20: nng.sp.protocol.pubsub0.sub_test ............   Passed    2.61 sec
      Start 21: nng.sp.protocol.pubsub0.xsub_test
21/81 Test #21: nng.sp.protocol.pubsub0.xsub_test ...........   Passed    1.73 sec
      Start 22: nng.sp.protocol.reqrep0.req_test
22/81 Test #22: nng.sp.protocol.reqrep0.req_test ............***Failed    4.84 sec
      Start 23: nng.sp.protocol.reqrep0.rep_test
23/81 Test #23: nng.sp.protocol.reqrep0.rep_test ............   Passed    1.92 sec
      Start 24: nng.sp.protocol.reqrep0.xrep_test
24/81 Test #24: nng.sp.protocol.reqrep0.xrep_test ...........   Passed    1.74 sec
      Start 25: nng.sp.protocol.reqrep0.xreq_test
25/81 Test #25: nng.sp.protocol.reqrep0.xreq_test ...........   Passed    1.44 sec
      Start 26: nng.sp.protocol.survey0.respond_test
26/81 Test #26: nng.sp.protocol.survey0.respond_test ........   Passed    1.92 sec
      Start 27: nng.sp.protocol.survey0.survey_test
27/81 Test #27: nng.sp.protocol.survey0.survey_test .........***Failed    2.25 sec
      Start 28: nng.sp.protocol.survey0.xrespond_test
28/81 Test #28: nng.sp.protocol.survey0.xrespond_test .......   Passed    1.55 sec
      Start 29: nng.sp.protocol.survey0.xsurvey_test
29/81 Test #29: nng.sp.protocol.survey0.xsurvey_test ........   Passed    1.57 sec
      Start 30: nng.sp.transport.ipc.ipc_test
30/81 Test #30: nng.sp.transport.ipc.ipc_test ...............***Timeout 180.02 sec
      Start 31: nng.sp.transport.tcp.tcp_test
31/81 Test #31: nng.sp.transport.tcp.tcp_test ...............***Failed    0.71 sec
      Start 32: nng.sp.transport.ws.ws_test
32/81 Test #32: nng.sp.transport.ws.ws_test .................   Passed    0.83 sec
      Start 33: nng.supplemental.base64_test
33/81 Test #33: nng.supplemental.base64_test ................   Passed    0.05 sec
      Start 34: nng.supplemental.sha1_test
34/81 Test #34: nng.supplemental.sha1_test ..................   Passed    0.05 sec
      Start 35: nng.supplemental.wssfile_test
35/81 Test #35: nng.supplemental.wssfile_test ...............   Passed    0.02 sec
      Start 36: nng.supplemental.websocket_test
36/81 Test #36: nng.supplemental.websocket_test .............   Passed    0.75 sec
      Start 37: nng.inproc_lat
37/81 Test #37: nng.inproc_lat ..............................   Passed    9.27 sec
      Start 38: nng.inproc_thr
38/81 Test #38: nng.inproc_thr ..............................   Passed    5.62 sec
      Start 39: nng.device
39/81 Test #39: nng.device ..................................   Passed    0.30 sec
      Start 40: nng.files
40/81 Test #40: nng.files ...................................   Passed    0.04 sec
      Start 41: nng.httpclient
41/81 Test #41: nng.httpclient ..............................   Passed    5.07 sec
      Start 42: nng.httpserver
42/81 Test #42: nng.httpserver ..............................   Passed    3.21 sec
      Start 43: nng.inproc
43/81 Test #43: nng.inproc ..................................   Passed    1.61 sec
      Start 44: nng.ipc
44/81 Test #44: nng.ipc .....................................***Failed    1.76 sec
      Start 45: nng.ipcsupp
45/81 Test #45: nng.ipcsupp .................................   Passed    0.10 sec
      Start 46: nng.ipcwinsec
46/81 Test #46: nng.ipcwinsec ...............................   Passed    0.09 sec
      Start 47: nng.multistress
47/81 Test #47: nng.multistress .............................***Timeout  60.02 sec
      Start 48: nng.nonblock
48/81 Test #48: nng.nonblock ................................   Passed   15.11 sec
      Start 49: nng.options
49/81 Test #49: nng.options .................................   Passed    0.04 sec
      Start 50: nng.pipe
50/81 Test #50: nng.pipe ....................................   Passed    0.46 sec
      Start 51: nng.pollfd
51/81 Test #51: nng.pollfd ..................................   Passed    0.47 sec
      Start 52: nng.scalability
52/81 Test #52: nng.scalability .............................   Passed    1.12 sec
      Start 53: nng.stats
53/81 Test #53: nng.stats ...................................   Passed    0.14 sec
      Start 54: nng.synch
54/81 Test #54: nng.synch ...................................   Passed    0.38 sec
      Start 55: nng.tls
55/81 Test #55: nng.tls .....................................   Passed    0.03 sec
      Start 56: nng.tcpsupp
56/81 Test #56: nng.tcpsupp .................................   Passed    0.15 sec
      Start 57: nng.tcp
57/81 Test #57: nng.tcp .....................................   Passed    1.80 sec
      Start 58: nng.tcp6
58/81 Test #58: nng.tcp6 ....................................   Passed    2.31 sec
      Start 59: nng.udp
59/81 Test #59: nng.udp .....................................***Failed    0.16 sec
      Start 60: nng.ws
60/81 Test #60: nng.ws ......................................   Passed    2.13 sec
      Start 61: nng.wss
61/81 Test #61: nng.wss .....................................   Passed    0.03 sec
      Start 62: nng.bus
62/81 Test #62: nng.bus .....................................   Passed    0.31 sec
      Start 63: nng.reqctx
63/81 Test #63: nng.reqctx ..................................   Passed    2.27 sec
      Start 64: nng.reqstress
64/81 Test #64: nng.reqstress ...............................***Timeout  60.02 sec
      Start 65: nng.compat_block
65/81 Test #65: nng.compat_block ............................   Passed    0.32 sec
      Start 66: nng.compat_bug777
66/81 Test #66: nng.compat_bug777 ...........................   Passed    0.22 sec
      Start 67: nng.compat_bus
67/81 Test #67: nng.compat_bus ..............................   Passed    0.32 sec
      Start 68: nng.compat_cmsg
68/81 Test #68: nng.compat_cmsg .............................   Passed    0.09 sec
      Start 69: nng.compat_msg
69/81 Test #69: nng.compat_msg ..............................   Passed    0.12 sec
      Start 70: nng.compat_iovec
70/81 Test #70: nng.compat_iovec ............................   Passed    0.09 sec
      Start 71: nng.compat_device
71/81 Test #71: nng.compat_device ...........................   Passed    0.73 sec
      Start 72: nng.compat_pair
72/81 Test #72: nng.compat_pair .............................   Passed    0.09 sec
      Start 73: nng.compat_pipeline
73/81 Test #73: nng.compat_pipeline .........................   Passed    0.17 sec
      Start 74: nng.compat_poll
74/81 Test #74: nng.compat_poll .............................   Passed    0.46 sec
      Start 75: nng.compat_reqrep
75/81 Test #75: nng.compat_reqrep ...........................   Passed    1.14 sec
      Start 76: nng.compat_survey
76/81 Test #76: nng.compat_survey ...........................   Passed    3.08 sec
      Start 77: nng.compat_reqttl
77/81 Test #77: nng.compat_reqttl ...........................   Passed    0.34 sec
      Start 78: nng.compat_shutdown
78/81 Test #78: nng.compat_shutdown .........................   Passed    0.10 sec
      Start 79: nng.compat_surveyttl
79/81 Test #79: nng.compat_surveyttl ........................   Passed    0.34 sec
      Start 80: nng.compat_options
80/81 Test #80: nng.compat_options ..........................   Passed    0.09 sec
      Start 81: nng.cplusplus_pair
81/81 Test #81: nng.cplusplus_pair ..........................   Passed    0.09 sec

89% tests passed, 9 tests failed out of 81

Total Test time (real) = 582.35 sec

The following tests FAILED:
      1 - nng.core.aio_test (Timeout)
     22 - nng.sp.protocol.reqrep0.req_test (Failed)
     27 - nng.sp.protocol.survey0.survey_test (Failed)
     30 - nng.sp.transport.ipc.ipc_test (Timeout)
     31 - nng.sp.transport.tcp.tcp_test (Failed)
     44 - nng.ipc (Failed)
     47 - nng.multistress (Timeout)
     59 - nng.udp (Failed)
     64 - nng.reqstress (Timeout)
Errors while running CTest
gdamore commented 1 year ago

If you're actually building on Snow Leopard, I expect there to be problems. macOS has a long and storied set of problems with POSIX APIs for threading, synchronization, and timekeeping. Recent versions are much better, but the old versions have a lot of ... compromises, and I am not surprised to learn that the test suites fail in places.

The aio_test timeout is a rather serious problem, and may indicate that more work is required to support that platform.

gdamore commented 1 year ago

Missing key APIs (particularly those specified by POSIX) and an absolutely atrocious implementation for thread synchronization makes older macOS a terrible target for NNG (or any multithreaded programming really -- you have to buy into the whole macOS Grand Central Dispatch approach if you want to have non-crummy performance on older systems, and to some extent even on modern versions -- and I'm not even sure GCD was present in Snow Leopard.

Anyway, I'm afraid I have no configuration capable of reproducing these errors, and honestly I'm very constrained for time, and have very little interest in supporting something that old particularly when I know how fundamentally busted the platform is for something like NNG.

If NNG provides basic work (it looks like it mostly does), then I'd ignore these test suite failures, and just move on with life. It simply isn't worth the effort to make these test suites function for this platform.

barracuda156 commented 1 year ago

@gdamore Thank you for responding!

The aio_test timeout is a rather serious problem, and may indicate that more work is required to support that platform.

Could you just point out at what to look specifically? Yes, I know it is an old platform, and you may have a better use of your time than fixing this yourself. But an advice on this will be great.