groovy-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From russellr <Russell.Robin...@auspost.com.au>
Subject Version Hell
Date Tue, 16 May 2017 02:55:26 GMT
I have a vast quantity of tests for a website which worked fine until I
upgrade angularjs.  Now they work intermittently.

The particular problem is with Geb's isDisplayed function.

If I upgrade Geb, then I have to upgrade Groovy. I either get
StackOverflowError or ShortTypeHandling errors.

Here are the relevant versions that *used* to work:
        <cucumber-jvm.version>1.1.5</cucumber-jvm.version>
        <gherkin.version>2.12.2</gherkin.version>
        <groovy.version>2.1.6</groovy.version>
        <geb.version>0.9.2</geb.version>
        <selenium.version>2.38.0</selenium.version>

If I upgrade Geb to 1.1.1, I get:

java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:297)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NoClassDefFoundError:
org/codehaus/groovy/runtime/typehandling/ShortTypeHandling

If I *then* upgrade Groovy to 2.4.11 or later I get:

java.lang.StackOverflowError
        at java.lang.ThreadLocal.get(ThreadLocal.java:143)
        at
java.util.concurrent.locks.ReentrantReadWriteLock$Sync.tryReleaseShared(ReentrantReadWriteLock.java:426)
        at
java.util.concurrent.locks.AbstractQueuedSynchronizer.releaseShared(AbstractQueuedSynchronizer.java:1340)
        at
java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock.unlock(ReentrantReadWriteLock.java:883)
        at
groovy.lang.ExpandoMetaClass.checkInitalised(ExpandoMetaClass.java:837)

The StackOverflowError appears to be triggered by a simple "Given":
Given(~'I am on the reference page for (.+)') { String path ->
}

I've removed the body to confirm that it's actuall just the Given that's
causing the problem.

Where to now?




--
View this message in context: http://groovy.329449.n5.nabble.com/Version-Hell-tp5741010.html
Sent from the Groovy Users mailing list archive at Nabble.com.

Mime
View raw message