Вместо того, чтобы полагаться на компаратор, используйте Hamcrest
lessThan
и greaterThan
. В вашем шаге определения:
import static org.junit.Assert.assertThat;
import static org.hamcrest.Matchers.greaterThan;
import static org.hamcrest.Matchers.lessThan;
...
if(condition.equals("less than")) {
assertThat(val, lessThan(count));
} else if(condition.equals("greater than")) {
assertThat(val, greaterThan(count));
}
Вы можете обогатить, что включает в себя все возможные условия:
switch(condition.toLowerCase()) {
case "less than":
case "<":
assertThat(val, lessThan(count));
break;
case "less than or equal to":
case "<=":
assertThat(val, lessThanOrEqualTo(count));
break;
case "greater than":
case ">":
assertThat(val, greaterThan(count));
break;
case "greater than or equal to":
case ">=":
assertThat(val, greaterThanOrEqualTo(count));
break;
...
}
Обратите внимание, что вам нужно будет зависеть от библиотеки Hamcrest в проекте (в случае, если он еще не зависимость).