@Test void matches() { TestableProgressEvent event = new TestableProgressEvent(); assertTrue(event.matches(new TestableProgressEvent())); assertFalse(event.matches(new String("whatever"))); }
@Override public boolean matches(Object otherEvent) { return otherEvent.getClass() == getClass(); }
AbstractProgressEvent implements ProgressEvent { @Override public boolean matches(Object otherEvent) { return otherEvent.getClass() == getClass(); } }
AbstractProgressEvent implements ProgressEvent { @Override public boolean matches(Object otherEvent) { return otherEvent.getClass() == getClass(); }  }
AbstractProgressEvent implements ProgressEvent { @Override public boolean matches(Object otherEvent) { return otherEvent.getClass() == getClass(); }  @Override boolean matches(Object otherEvent); }
AbstractProgressEvent implements ProgressEvent { @Override public boolean matches(Object otherEvent) { return otherEvent.getClass() == getClass(); }  @Override boolean matches(Object otherEvent);  }