@Test public void testExceptionThrowingProducer() throws Exception {
    bus.register(new ExceptionThrowingProducer());
    try {
      bus.register(new DummySubscriber());
      fail("Should have failed due to exception-throwing producer.");
    } catch (RuntimeException e) {
      // Expected.
    }
  }
Tests that events are distributed to any subscribers to their type or any
supertype, including interfaces and superclasses.

Also checks delivery ordering in such cases.
otto/src/test/java/com/squareup/otto/BusTest.java