bpmux icon indicating copy to clipboard operation
bpmux copied to clipboard

Tests fail on Node 20.9.0

Open patuwwy opened this issue 1 year ago • 2 comments

21:36 $ node -v
v20.9.0
✔ ~/github/bpmux [master|…1]
23:20 $ grunt test
Running "exec:certs" (exec) task

Running "mochaTest:default" (mochaTest) task


  tcp aho=false coa=false
    ✔ (x1, client initiated) should support fragmented data
    ✔ (x1, server initiated) should support fragmented data
    ✔ (x1, client initiated) should support fragmented data when read(0) sends status message (2005ms)
    ✔ (x1, server initiated) should support fragmented data when read(0) sends status message (2004ms)
    ✔ (x1, client initiated) should support not parsing handshake data
    ✔ (x1, server initiated) should support not parsing handshake data
    ✔ (x1, client initiated) should pass this as mux in parse_handshake_data
    ✔ (x1, server initiated) should pass this as mux in parse_handshake_data
    ✔ (x1, client initiated) should emit an error if handshake message length too short
    ✔ (x1, server initiated) should emit an error if handshake message length too short
    ✔ (x1, client initiated) should emit an error if pre-handshake message length too short
    ✔ (x1, server initiated) should emit an error if pre-handshake message length too short
    ✔ (x1, client initiated) should emit an error if status message length too short
    ✔ (x1, server initiated) should emit an error if status message length too short
    ✔ (x1, client initiated) should support small high-water marks
    ✔ (x1, server initiated) should support small high-water marks
    ✔ (x1, client initiated) should not deliver data if duplex has ended
    ✔ (x1, server initiated) should not deliver data if duplex has ended
    1) "after each" hook for "(x1, server initiated) should not deliver data if duplex has ended"
    2) "after each" hook for "(x1, server initiated) should not deliver data if duplex has ended"


  18 passing (4s)
  2 failing

  1) tcp aho=false coa=false
       "after each" hook for "(x1, server initiated) should not deliver data if duplex has ended":
     Uncaught AssertionError: expected 'expected handshake, got: 4' to be one of [ 'write after end', …(7) ]
      at BPMux.mux_error_listener (test/test_comms.js:228:39)
      at BPMux.emit (node:events:514:28)
      at BPMux.emit (node:domain:488:12)
      at BPMux._process_header (index.js:1130:18)
      at Writable.write [as _write] (index.js:913:29)
      at writeOrBuffer (node:internal/streams/writable:447:12)
      at _write (node:internal/streams/writable:389:10)
      at Writable.write (node:internal/streams/writable:393:10)
      at exports.Decoder.ondata (node:internal/streams/readable:817:22)
      at exports.Decoder.emit (node:events:526:35)

  2) tcp aho=false coa=false
       "after each" hook for "(x1, server initiated) should not deliver data if duplex has ended":
     Error: done() called multiple times in hook <tcp aho=false coa=false "after each" hook for "(x1, server initiated) should not deliver data if duplex has ended"> of file /home/pfalba/github/bpmux/test/test_tcp.js
      at Object.onceWrapper (node:events:628:28)
      at Server.emit (node:events:514:28)
      at Server.emit (node:domain:488:12)
      at emitCloseNT (node:net:2273:8)
      at process.processTicksAndRejections (node:internal/process/task_queues:81:21)



Warning: Task "mochaTest:default" failed. Use --force to continue.

patuwwy avatar Oct 31 '23 23:10 patuwwy

FYI: pass on 19.0.0 but fail on 19.1.0

patuwwy avatar Nov 02 '23 12:11 patuwwy

Thanks for letting me know, I'll take a look when I get some time. The node stream implementation no doubt changed again

davedoesdev avatar Nov 02 '23 20:11 davedoesdev