### Question:
MongoDatabaseHandler extends SimpleChannelInboundHandler<ClientRequest> { CompletionStage<MongoReply> handleGetMoreAsync(MongoGetMore getMore) { return mongoBackend.handleGetMoreAsync(getMore) .handle((queryResult, ex) -> createResponseMongoReplyForGetMore(getMore, queryResult, ex)); } MongoDatabaseHandler(MongoBackend mongoBackend, ChannelGroup channelGroup); @Override void channelActive(ChannelHandlerContext ctx); @Override void channelInactive(ChannelHandlerContext ctx);  }### Answer:
@Test void testHandleGetMoreUnknownError() throws Exception { final MongoBackend backend = mock(MongoBackend.class); when(backend.handleGetMoreAsync(any())).thenCallRealMethod(); when(backend.handleGetMore(any())).thenThrow(new RuntimeException("unexpected")); final Channel channel = mock(Channel.class); final MessageHeader header = new MessageHeader(0, 0); final MongoDatabaseHandler handler = new MongoDatabaseHandler(backend, null); MongoGetMore requestGetMore = new MongoGetMore(channel, header, "collectionName", 5, 0); MongoReply responseMongoReply = handler.handleGetMoreAsync(requestGetMore).toCompletableFuture().get(); assertThat(responseMongoReply).isNotNull(); List<Document> documents = responseMongoReply.getDocuments(); assertThat(documents).isNotEmpty(); Document doc = documents.get(0); assertThat(doc).isNotNull(); assertThat(doc.get("$err")).isEqualTo("Unknown error: unexpected"); assertThat(doc.get("errmsg")).isEqualTo("Unknown error: unexpected"); assertThat(doc.get("ok")).isEqualTo(0); }