@Test @SuppressWarnings("all") public void mutateRowsTest() throws Exception { MutateRowsResponse expectedResponse = MutateRowsResponse.newBuilder().build(); mockBigtable.addResponse(expectedResponse); TableName tableName = TableName.of("[PROJECT]", "[INSTANCE]", "[TABLE]"); List<MutateRowsRequest.Entry> entries = new ArrayList<>(); MutateRowsRequest request = MutateRowsRequest.newBuilder() .setTableName(tableName.toString()) .addAllEntries(entries) .build(); MockStreamObserver<MutateRowsResponse> responseObserver = new MockStreamObserver<>(); ServerStreamingCallable<MutateRowsRequest, MutateRowsResponse> callable = client.mutateRowsCallable(); callable.serverStreamingCall(request, responseObserver); List<MutateRowsResponse> actualResponses = responseObserver.future().get(); Assert.assertEquals(1, actualResponses.size()); Assert.assertEquals(expectedResponse, actualResponses.get(0)); }
@Test @SuppressWarnings("all") public void mutateRowsExceptionTest() throws Exception { StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT); mockBigtable.addException(exception); TableName tableName = TableName.of("[PROJECT]", "[INSTANCE]", "[TABLE]"); List<MutateRowsRequest.Entry> entries = new ArrayList<>(); MutateRowsRequest request = MutateRowsRequest.newBuilder() .setTableName(tableName.toString()) .addAllEntries(entries) .build(); MockStreamObserver<MutateRowsResponse> responseObserver = new MockStreamObserver<>(); ServerStreamingCallable<MutateRowsRequest, MutateRowsResponse> callable = client.mutateRowsCallable(); callable.serverStreamingCall(request, responseObserver); try { List<MutateRowsResponse> actualResponses = responseObserver.future().get(); Assert.fail("No exception thrown"); } catch (ExecutionException e) { Assert.assertTrue(e.getCause() instanceof InvalidArgumentException); InvalidArgumentException apiException = (InvalidArgumentException) e.getCause(); Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); } }
@Override public void appendRequest(MutateRowsRequest request) { if (builder == null) { builder = request.toBuilder(); } else { builder.addAllEntries(request.getEntriesList()); } }
@Override public void appendRequest(MutateRowsRequest request) { if (builder == null) { builder = request.toBuilder(); } else { builder.addAllEntries(request.getEntriesList()); } }