### Question:
ControllerExecutionBB extends AbstractControllerExecution<BuildingBlockExecution> { public void execute(final BuildingBlockExecution execution) { ControllerContext<BuildingBlockExecution> controllerContext = buildControllerContext(execution); controllerExecute(controllerContext); }  void execute(final BuildingBlockExecution execution); @Override void controllerExecute(ControllerContext<BuildingBlockExecution> controllerContext);  }### Answer:
@Test public void testExecution_validInput_expectedOutput() { controllerExecutionBB.execute(execution); verify(execution).setVariable("stage", "ready"); verify(execution).setVariable("stage", "prepare"); verify(execution).setVariable("stage", "run"); }