@Override public void readRows( ReadRowsRequest request, StreamObserver<ReadRowsResponse> responseObserver) { RpcExpectation expectedRpc = expectations.poll(); i++; Truth.assertWithMessage("Unexpected request#" + i + ":" + request.toString()) .that(expectedRpc) .isNotNull(); Truth.assertWithMessage("Unexpected request#" + i) .that(request) .isEqualTo(expectedRpc.getExpectedRequest()); for (ReadRowsResponse response : expectedRpc.responses) { responseObserver.onNext(response); } if (expectedRpc.statusCode.toStatus().isOk()) { responseObserver.onCompleted(); } else { responseObserver.onError(expectedRpc.statusCode.toStatus().asRuntimeException()); } } }