### Question:
LearningBehavior implements ILearningBehavior<ACTION> { public void notifyBeforeStep() { if(hasBatchChanged) { updateRule.notifyNewBatchStarted(); hasBatchChanged = false; } }  @Override void handleEpisodeStart(); @Override void handleNewExperience(Observation observation, ACTION action, double reward, boolean isTerminal); @Override void handleEpisodeEnd(Observation finalObservation); void notifyBeforeStep();  }### Answer:
@Test public void when_notifyBeforeStepAndBatchUnchanged_expect_notifyNewBatchStartedNotCalled() { sut.notifyBeforeStep(); verify(updateRuleMock, never()).notifyNewBatchStarted(); }