Using Node's built in net.Socket imposes an 8kb message limit on the JSONL writes from swift-testing. This meant that if a test case had a lot of iterations the test event would overrun the limit and the message would never be read.
Create our own readable stream and manage pausing/resuming the pipe on data/drain events. This allows for swift-testing to write whatever size messages it wants.
Using Node's built in net.Socket imposes an 8kb message limit on the JSONL writes from swift-testing. This meant that if a test case had a lot of iterations the
test
event would overrun the limit and the message would never be read.Create our own readable stream and manage pausing/resuming the pipe on data/drain events. This allows for swift-testing to write whatever size messages it wants.