You seem to have quite some duplicated code in these event dispatching testers which only differ slightly, have you considered adding a base class in this case?