@Test public void echoByte() throws Exception { echoByte0(false); }
final AtomicReference<byte[]> text = new AtomicReference<>(null); c.prepareGet(getTargetUrl()).execute(new WebSocketUpgradeHandler.Builder().addWebSocketListener(new WebSocketListener() {
final AtomicReference<byte[]> text = new AtomicReference<>(null); WebSocket websocket = c.prepareGet(getTargetUrl()).execute(new WebSocketUpgradeHandler.Builder().addWebSocketListener(new WebSocketListener() {
final AtomicReference<byte[]> text = new AtomicReference<>(null); WebSocket websocket = c.prepareGet(getTargetUrl()).execute(new WebSocketUpgradeHandler.Builder().addWebSocketListener(new WebSocketListener() {
@Test public void echoByteCompressed() throws Exception { echoByte0(true); }
private void echoByte0(boolean enableCompression) throws Exception { try (AsyncHttpClient c = asyncHttpClient(config().setEnablewebSocketCompression(enableCompression))) { final CountDownLatch latch = new CountDownLatch(1); final AtomicReference<byte[]> receivedBytes = new AtomicReference<>(new byte[0]); WebSocket websocket = c.prepareGet(getTargetUrl()).execute(new WebSocketUpgradeHandler.Builder().addWebSocketListener(new WebSocketListener() { @Override public void onOpen(WebSocket websocket) { } @Override public void onClose(WebSocket websocket, int code, String reason) { latch.countDown(); } @Override public void onError(Throwable t) { t.printStackTrace(); latch.countDown(); } @Override public void onBinaryFrame(byte[] frame, boolean finalFragment, int rsv) { receivedBytes.set(frame); latch.countDown(); } }).build()).get(); websocket.sendBinaryFrame(ECHO_BYTES); latch.await(); assertEquals(receivedBytes.get(), ECHO_BYTES); } }