scwhittle commented on code in PR #28016:
URL: https://github.com/apache/beam/pull/28016#discussion_r1308724104
##########
runners/google-cloud-dataflow-java/worker/src/test/java/org/apache/beam/runners/dataflow/worker/windmill/grpcclient/GrpcWindmillServerTest.java:
##########
@@ -136,6 +146,65 @@ private <Stream extends StreamObserver> void
maybeInjectError(Stream stream) {
}
}
+ @Test
+ public void testWindmillApplianceGrpcDeadlineInterceptor() {
+ Windmill.GetWorkResponse getWorkResponse =
+ Windmill.GetWorkResponse.newBuilder()
+ .addWork(
+ Windmill.ComputationWorkItems.newBuilder()
+ .setComputationId("someComputation1")
+ .build())
+ .build();
+
+ serviceRegistry.addService(
+ new WindmillApplianceGrpc.WindmillApplianceImplBase() {
+ @Override
+ public void getWork(
+ Windmill.GetWorkRequest request,
+ StreamObserver<Windmill.GetWorkResponse> responseObserver) {
+ responseObserver.onNext(getWorkResponse);
+ responseObserver.onCompleted();
+ }
+ });
+
+ ClientInterceptor testInterceptor =
+ new ClientInterceptor() {
+ Deadline deadline;
+
+ @Override
+ public <ReqT, RespT> ClientCall<ReqT, RespT> interceptCall(
+ MethodDescriptor<ReqT, RespT> methodDescriptor,
+ CallOptions callOptions,
+ Channel channel) {
+ if (deadline != null) {
+ // We want to assert that a new deadline is being created on
every call since
+ // deadlines are absolute.
+ assertNotEquals(deadline, callOptions.getDeadline());
+ }
+
+ deadline = callOptions.getDeadline();
Review Comment:
nit: verify callOptions.getDeadline is non-null
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]