Details
-
Type:
Bug
-
Status:
Open
-
Priority:
Minor
-
Resolution: Unresolved
-
Affects Version/s: 2.0.0Release
-
Fix Version/s: None
-
Component/s: Testing, Running, Debugging
-
Labels:
-
Environment:Mac OS 10.6.2
Eclipse 3.5.1
Groovy-Eclipse Feature 2.0.1.20100226-1200-e35 org.codehaus.groovy.eclipse.feature.feature.group
-
Testcase included:yes
-
Number of attachments :
Description
Straight from the Spock codebase:
SpecInheritance.groovy:
import spock.lang.* abstract class BaseSpec extends Specification { def x = { println 'base field initializer' }() def setupSpec() { println 'base setupSpec()' } def cleanupSpec() { println 'base cleanupSpec()' } def setup() { println 'base setup()' } def cleanup() { println 'base cleanup()' } def baseSpecMethod() { setup: println 'base spec method' } } class DerivedSpec extends BaseSpec { def y = { println 'derived field initializer' }() def setupSpec() { println 'derived setupSpec()' } def cleanupSpec() { println 'derived cleanupSpec()' } def setup() { println 'derived setup()' } def cleanup() { println 'derived cleanup()' } def derivedSpecMethod() { setup: println 'derived spec method' } }
Here I cannot run DerivedSpec by right-clicking on the class in the editor ("Run as JUnit Test" doesn't show up in context menu). I can run DerivedSpec by right-clicking on class in Package Explorer, or after removing the 'abstract' modifier from BaseSpec. (After adding and removing 'abstract' several times I suddenly could run DerivedSpec even if 'abstract' was present on BaseSpec, but usually the problem is perfectly reproducible for me.)