// Path: MetaHeuristics4Java/src/main/java/de/mh4j/solver/termination/StepCountTermination.java
// public class StepCountTermination implements TerminationCondition {
// 
//     private final Solver<?> solver;
//     private final int maxStepCount;
// 
//     public StepCountTermination(Solver<?> solver, int maxStepCount) {
//         this.solver = solver;
//         this.maxStepCount = maxStepCount;
//     }
// 
//     @Override
//     public boolean shouldTerminate() {
//         return solver.getNumberOfSteps() >= maxStepCount;
//     }
// }
// 
// Path: MetaHeuristics4Java/src/main/java/de/mh4j/solver/termination/TerminationCondition.java
// public interface TerminationCondition {
// 
//     // TODO add javadoc
//     boolean shouldTerminate();
// 
// }


import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import org.testng.annotations.Test;
import de.mh4j.solver.termination.StepCountTermination;
import de.mh4j.solver.termination.TerminationCondition;
package de.mh4j.solver;




public class StepCountTerminationTest {

    @Test
    @SuppressWarnings("unchecked")
    public void testShouldTerminate() {
        int maxStepCount = 100;
        Solver<Object> solver = mock(Solver.class);
// Path: MetaHeuristics4Java/src/main/java/de/mh4j/solver/termination/StepCountTermination.java
// public class StepCountTermination implements TerminationCondition {
// 
//     private final Solver<?> solver;
//     private final int maxStepCount;
// 
//     public StepCountTermination(Solver<?> solver, int maxStepCount) {
//         this.solver = solver;
//         this.maxStepCount = maxStepCount;
//     }
// 
//     @Override
//     public boolean shouldTerminate() {
//         return solver.getNumberOfSteps() >= maxStepCount;
//     }
// }
// 
// Path: MetaHeuristics4Java/src/main/java/de/mh4j/solver/termination/TerminationCondition.java
// public interface TerminationCondition {
// 
//     // TODO add javadoc
//     boolean shouldTerminate();
// 
// }


// Path: MetaHeuristics4Java/src/test/java/de/mh4j/solver/StepCountTerminationTest.java
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
import org.testng.annotations.Test;
import de.mh4j.solver.termination.StepCountTermination;
import de.mh4j.solver.termination.TerminationCondition;

package de.mh4j.solver;




public class StepCountTerminationTest {

    @Test
    @SuppressWarnings("unchecked")
    public void testShouldTerminate() {
        int maxStepCount = 100;
        Solver<Object> solver = mock(Solver.class);
        TerminationCondition terminator = new StepCountTermination(solver, maxStepCount);