()
| 463 | } |
| 464 | |
| 465 | @Test |
| 466 | public void replayed() throws Exception { |
| 467 | resetMockClient(); |
| 468 | |
| 469 | final int id = 42; |
| 470 | final ChannelBuffer buffer = buildGoodResponse(true, id); |
| 471 | final byte[] array = new byte[buffer.writerIndex()]; |
| 472 | buffer.readBytes(array); |
| 473 | |
| 474 | final GetRequest get = new GetRequest(TABLE, ROW); |
| 475 | final Deferred<Object> deferred = get.getDeferred(); |
| 476 | inflightTheRpc(id, get); |
| 477 | |
| 478 | final MessageEvent event = mock(MessageEvent.class); |
| 479 | when(event.getMessage()) |
| 480 | .thenReturn(ChannelBuffers.wrappedBuffer(Arrays.copyOf(array, 3))) |
| 481 | .thenReturn(ChannelBuffers.wrappedBuffer( |
| 482 | Arrays.copyOfRange(array, 3, 10))) |
| 483 | .thenReturn(ChannelBuffers.wrappedBuffer( |
| 484 | Arrays.copyOfRange(array, 10, array.length))); |
| 485 | |
| 486 | region_client.messageReceived(ctx, event); |
| 487 | region_client.messageReceived(ctx, event); |
| 488 | region_client.messageReceived(ctx, event); |
| 489 | |
| 490 | @SuppressWarnings("unchecked") |
| 491 | final List<KeyValue> kvs = (List<KeyValue>)deferred.join(100); |
| 492 | assertEquals(1, kvs.size()); |
| 493 | assertArrayEquals(ROW, kvs.get(0).key()); |
| 494 | assertArrayEquals(FAMILY, kvs.get(0).family()); |
| 495 | assertArrayEquals(QUALIFIER, kvs.get(0).qualifier()); |
| 496 | assertArrayEquals(VALUE, kvs.get(0).value()); |
| 497 | assertEquals(TIMESTAMP, kvs.get(0).timestamp()); |
| 498 | verify(secure_rpc_helper, never()).handleResponse(buffer, chan); |
| 499 | assertEquals(1, timer.tasks.size()); |
| 500 | assertEquals(60000, (long)timer.tasks.get(0).getValue()); |
| 501 | verify(timer.timeouts.get(0), times(1)).cancel(); |
| 502 | } |
| 503 | |
| 504 | @Test |
| 505 | public void replayedMissingMiddle() throws Exception { |
nothing calls this directly
no test coverage detected