@Retention(value=RUNTIME) @Target(value={TYPE,METHOD}) public @interface Unroll
@Unroll("#name should have length #length") def "name length"() { expect: name.size() == length where: name << ["Kirk", "Spock", "Scotty"] length << [4, 5, 6] }Alternatively, the naming pattern can also be embedded in the method name:
@Unroll def "#name should have length #length"() { ... }The
Unroll
annotation can also be put on a spec class. This has the same
effect as putting it on every data-driven feature method that is not already
annotated with Unroll
. By embedding the naming pattern in the method
names, each method can still have its own pattern.
Having @Unroll
on a super spec does not influence the features of sub specs,
that is @Unroll
is not inheritable.
public abstract String value