    @Test
    public void testSendMessage() {

        var wsMockHelper = new WebSocketMockHelper();
//        var producerMockDefault = getProducerMock(wsMockHelper, false);
//        var producerMockStreaming = getProducerMock(wsMockHelper, true);
        getTestByteArrayStream().forEach(bytes -> {
            try {
                WsProducer.sendMessage(wsMockHelper.getMock(), bytes, false);
                assertArrayEquals("sendMessage() (bytes, non-streaming) seems flawed", bytes, wsMockHelper.getResultBytes());
                wsMockHelper.resetBuffer();
                WsProducer.sendMessage(wsMockHelper.getMock(), bytes, true);
                assertArrayEquals("sendMessage() (bytes, streaming) seems flawed", bytes, wsMockHelper.getResultBytes());
                wsMockHelper.resetBuffer();
                var string = new String(bytes, StandardCharsets.US_ASCII);
                WsProducer.sendMessage(wsMockHelper.getMock(), string, false);
                assertArrayEquals("sendMessage() (String, non-streaming) seems flawed", bytes, wsMockHelper.getResultBytes());
                wsMockHelper.resetBuffer();
                WsProducer.sendMessage(wsMockHelper.getMock(), string, true);
                assertArrayEquals("sendMessage() (String, streaming) seems flawed", bytes, wsMockHelper.getResultBytes());
                wsMockHelper.resetBuffer();
            } catch (Exception e) {
                throw new RuntimeException(e);
            }
        });
    }