public void executeWhenGainedLeadership(Runnable task) { leadershipObserver.executeWhenGainedLeadership(task); }
private void registerFollowerAndLeaderTasks() { leadershipObserver.executeWhenGainedLeadership(leaderTask); leadershipObserver.executeWhenLostLeadership(followerTask); }
@Test public void executeAllSubmittedTasks() { Runnable secondLeaderTask = mock(Runnable.class); leadershipObserver.executeWhenGainedLeadership(leaderTask); leadershipObserver.executeWhenGainedLeadership(secondLeaderTask); gainLeadership(); waitForTasksToFinish(); verify(leaderTask).run(); verify(secondLeaderTask).run(); }