@Test protected void consumer_implementsCall_submit(TestInfo testInfo) throws Exception {
    String testSuffix = testSuffix(testInfo);
    Span span = spanBuilder(testSuffix).build();

    Call<Void> call = storage.spanConsumer().accept(List.of(span));
    // Ensure the implementation didn't accidentally do I/O at assembly time.
    assertGetTraceReturnsEmpty(span.traceId());

    CountDownLatch latch = new CountDownLatch(1);
    Callback<Void> callback = new Callback<Void>() {
      @Override public void onSuccess(Void value) {
        latch.countDown();
      }

      @Override public void onError(Throwable t) {
        latch.countDown();
      }
    };

    call.enqueue(callback);
    latch.await();
    blockWhileInFlight();

    assertGetTraceReturns(span);

    assertThatThrownBy(() -> call.enqueue(callback))
      .isInstanceOf(IllegalStateException.class);

    // no problem to clone a call
    call.clone().execute();
  }
This is unlikely and means instrumentation sends empty spans by mistake.
zipkin-tests/src/main/java/zipkin2/storage/ITSpanStore.java