spock.util.mop
Annotation Type ConfineMetaClassChanges


@Retention(value=RUNTIME)
@Target(value={TYPE,METHOD})
public @interface ConfineMetaClassChanges

Confines any changes made to the meta classes of the specified classes to the annotated scope. This is done by installing new meta classes when the scope is entered, and restoring the previously installed meta classes when the scope is left. Note that this only works reliably as long as spec execution is single-threaded.

If a spec class is annotated, the meta classes are restored to as they were before setupSpec() was executed, after cleanupSpec was executed.

If a feature method is annotated, the meta classes are restored to as they were after setup() was executed, before cleanup() is executed. For a data-driven feature method, meta classes are restored after each iteration.


Required Element Summary
 Class<?>[] value
          The classes whose meta class changes are to be confined.
 

Element Detail

value

public abstract Class<?>[] value
The classes whose meta class changes are to be confined.