@Test public void producerCalledForExistingSubscribers() {
    StringCatcher catcher = new StringCatcher();
    StringProducer producer = new StringProducer();

    bus.register(catcher);
    bus.register(producer);

    assertEquals(Arrays.asList(StringProducer.VALUE), catcher.getEvents());
  }
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