commit d609c09d13e20f5c17e19c6c7cc5f2b742c38950
Author: Mauro Talevi <[email protected]>
AuthorDate: Tue, 21 May 2013 22:49:33 +0200
Commit: Mauro Talevi <[email protected]>
CommitDate: Tue, 21 May 2013 22:49:33 +0200
JBEHAVE-904: Avoid use of assertTrue() in loop to improve performance of
test verification.
diff --git
a/jbehave-core/src/test/java/org/jbehave/core/embedder/MetaFilterBehaviour.java
b/jbehave-core/src/test/java/org/jbehave/core/embedder/MetaFilterBehaviour.java
index 3901474..ee26c10 100755
---
a/jbehave-core/src/test/java/org/jbehave/core/embedder/MetaFilterBehaviour.java
+++
b/jbehave-core/src/test/java/org/jbehave/core/embedder/MetaFilterBehaviour.java
@@ -132,9 +132,15 @@ public class MetaFilterBehaviour {
MetaFilter filter = filter("groovy: a != '11' && b != '22'");
long start = System.currentTimeMillis();
for (int i = 0; i < 1000; i++) {
-
assertThat(filter.allow(metaBuilder.clear().a(11).b(33).build()), is(false));
+ boolean allow =
filter.allow(metaBuilder.clear().a(11).b(33).build());
+ if ( allow ){
+ continue;
+ } else {
+ break;
}
- assertThat("should be less than half a second for 1000 matches on a
simple case", System.currentTimeMillis() - start < 900, is(true));
+ }
+ long delta = System.currentTimeMillis() - start;
+ assertThat("should be less than half a second for 1000 matches on a
simple case", delta, Matchers.lessThan(500L));
}
private MetaFilter filter(String filterAsString) {