Skip to content
Snippets Groups Projects
Commit 96979fef authored by Krzysztof Witukiewicz's avatar Krzysztof Witukiewicz
Browse files

OZG-7608 OZG-7729 Call onCompleted in Streamer

parent 33492062
No related branches found
No related tags found
1 merge request!17OZG-7608 OZG-7729 gRPC endpoint for deleted Vorgaenge
...@@ -67,6 +67,7 @@ public class GrpcResponseBatchStreamer<ElemType, ResType> { ...@@ -67,6 +67,7 @@ public class GrpcResponseBatchStreamer<ElemType, ResType> {
if (!batchIsEmpty()) { if (!batchIsEmpty()) {
sendResponse(); sendResponse();
} }
responseObserver.onCompleted();
} }
private boolean batchIsEmpty() { private boolean batchIsEmpty() {
......
...@@ -146,6 +146,5 @@ class VorgangGrpcService extends VorgangServiceGrpc.VorgangServiceImplBase { ...@@ -146,6 +146,5 @@ class VorgangGrpcService extends VorgangServiceGrpc.VorgangServiceImplBase {
var responseStreamer = GrpcResponseBatchStreamer.create(GrpcFindVorgangResponseBuilder::new, responseObserver); var responseStreamer = GrpcResponseBatchStreamer.create(GrpcFindVorgangResponseBuilder::new, responseObserver);
vorgangService.findDeleted().map(vorgangStubMapper::toGrpcVorgangHeader).forEach(responseStreamer::send); vorgangService.findDeleted().map(vorgangStubMapper::toGrpcVorgangHeader).forEach(responseStreamer::send);
responseStreamer.finish(); responseStreamer.finish();
responseObserver.onCompleted();
} }
} }
\ No newline at end of file
...@@ -30,6 +30,8 @@ import java.util.function.Supplier; ...@@ -30,6 +30,8 @@ import java.util.function.Supplier;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.ValueSource;
import org.mockito.Mock; import org.mockito.Mock;
import io.grpc.stub.StreamObserver; import io.grpc.stub.StreamObserver;
...@@ -157,7 +159,7 @@ class GrpcResponseBatchStreamerTest { ...@@ -157,7 +159,7 @@ class GrpcResponseBatchStreamerTest {
batchStreamer.finish(); batchStreamer.finish();
verifyNoInteractions(responseObserver); verify(responseObserver, never()).onNext(any());
} }
@Test @Test
...@@ -169,6 +171,16 @@ class GrpcResponseBatchStreamerTest { ...@@ -169,6 +171,16 @@ class GrpcResponseBatchStreamerTest {
verify(responseObserver).onNext(response); verify(responseObserver).onNext(response);
} }
@ParameterizedTest
@ValueSource(ints = {0, 1})
void shouldCallOnCompleted(int batchSize) {
when(responseBuilder.getElementCount()).thenReturn(batchSize);
batchStreamer.finish();
verify(responseObserver).onCompleted();
}
} }
private static class DummyResponse { private static class DummyResponse {
......
...@@ -573,10 +573,10 @@ class VorgangGrpcServiceTest { ...@@ -573,10 +573,10 @@ class VorgangGrpcServiceTest {
} }
@Test @Test
void shouldCallOnCompleted() { void shouldNotCallStreamObserverDirectly() {
findDeletedVorgang(); findDeletedVorgang();
verify(responseObserver).onCompleted(); verifyNoInteractions(responseObserver);
} }
@Test @Test
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment