@Test
  public void testCallbackRuntimeException() throws Exception {
    final CountDownLatch getBlobCallbackCalled = new CountDownLatch(1);
    testBadCallback(new Callback<GetBlobResult>() {
      @Override
      public void onCompletion(GetBlobResult result, Exception exception) {
        getBlobCallbackCalled.countDown();
        throw new RuntimeException("Throwing an exception in the user callback");
      }
    }, getBlobCallbackCalled, true);
  }
Test that an exception thrown in a user defined callback will not crash the router
@throws Exception
ambry-router/src/test/java/com/github/ambry/router/GetManagerTest.java