@Test
public void and_step_execution_should_run_the_step_implementation() {
final AtomicBoolean visited = new AtomicBoolean(false);
final Step andStep = new MByHaveSpec() {
Step innerStep = and("an And step", () -> { visited.set(true); return StepResult.Success; });
}.innerStep;
final StepOutput result = andStep.execute(DummyStepHooks.DUMMY);
assertEquals(StepResult.Success, result.getResult());
assertTrue("The and step execution should execute the step implementation and change the visited flag", visited.get());
}