AbstractRequestResponseClient extends AbstractHonoClient implements RequestResponseClient { protected final void createAndSendRequest( final String action, final Buffer payload, final Handler<AsyncResult<R>> resultHandler) { createAndSendRequest(action, null, payload, resultHandler); } protected  AbstractRequestResponseClient(
            final HonoConnection connection,
            final String tenantId,
            final SendMessageSampler sampler); protected  AbstractRequestResponseClient(
            final HonoConnection connection,
            final String tenantId,
            final String replyId,
            final SendMessageSampler sampler); protected  AbstractRequestResponseClient(
            final HonoConnection connection,
            final String tenantId,
            final String deviceId,
            final String replyId,
            final SendMessageSampler sampler); protected  AbstractRequestResponseClient(
            final HonoConnection connection,
            final String tenantId,
            final ProtonSender sender,
            final ProtonReceiver receiver,
            final SendMessageSampler sampler); final void setResponseCache(final ExpiringValueCache<Object, R> cache); @Override final void setRequestTimeout(final long timoutMillis); @Override final int getCredit(); @Override final void sendQueueDrainHandler(final Handler<Void> handler); @Override final boolean isOpen(); @Override final void close(final Handler<AsyncResult<Void>> closeHandler);  }
@Test public void testCreateAndSendRequestFailsWithServerErrorExceptionIfSendQueueFull(final VertxTestContext ctx) { when(sender.sendQueueFull()).thenReturn(Boolean.TRUE); client.createAndSendRequest( "get", Buffer.buffer("hello"), ctx.failing(t -> { verify(sender, never()).send(any(Message.class)); assertFailureCause(ctx, span, t, HttpURLConnection.HTTP_UNAVAILABLE); ctx.completeNow(); }), span); }