Closed akozlova closed 7 years ago
Thanks for information. I'll change it hopefully over the weekend.
IDEA 2016.2 will have the api, starting from 2016.3 EAP the classes won't be accessible anymore. Sorry for the inconvenience.
Could you please update? This plugin cannot find anymore my failsafe tests results (IDEA 2016.3 EAP here)
Here is my stacktrace:
com/intellij/execution/junit2/ui/model/StateEvent
java.lang.NoClassDefFoundError: com/intellij/execution/junit2/ui/model/StateEvent
at org.dpytel.intellij.plugin.maventest.actions.ShowTestResultsAction.actionPerformed(ShowTestResultsAction.java:42)
at com.intellij.openapi.actionSystem.ex.ActionUtil$1.run(ActionUtil.java:199)
at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:215)
at com.intellij.openapi.actionSystem.impl.ActionButton.actionPerformed(ActionButton.java:188)
at com.intellij.openapi.actionSystem.impl.ActionButton.performAction(ActionButton.java:154)
at com.intellij.openapi.actionSystem.impl.ActionButton.processMouseEvent(ActionButton.java:325)
at java.awt.Component.processEvent(Component.java:6300)
at java.awt.Container.processEvent(Container.java:2236)
at java.awt.Component.dispatchEventImpl(Component.java:4891)
at java.awt.Container.dispatchEventImpl(Container.java:2294)
at java.awt.Component.dispatchEvent(Component.java:4713)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
at java.awt.Container.dispatchEventImpl(Container.java:2280)
at java.awt.Window.dispatchEventImpl(Window.java:2750)
at java.awt.Component.dispatchEvent(Component.java:4713)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.awt.EventQueue$4.run(EventQueue.java:729)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:843)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:675)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:391)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Caused by: java.lang.ClassNotFoundException: com.intellij.execution.junit2.ui.model.StateEvent PluginClassLoader[org.dpytel.intellij.plugin.maventest, 0.0.19]
at com.intellij.ide.plugins.cl.PluginClassLoader.loadClass(PluginClassLoader.java:64)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 38 more
Hi @jrd - thanks for letting me know. Looks like API change mentioned by @akozlova finally took place. This means that I have to rewrite huge parts of the plugin. It will take me some time, but hopefully I can finish it next week once now that I know what is removed.
Finally I managed to rewrite this plugin. It took quite a while and many features still do not work, see https://github.com/destin/maven-test-support-plugin/releases/tag/maven-test-support-plugin-0.0.20
The rest of the features will be restored in next versions. At this moment I just wanted to get this working in any form. I'll close this ticket once I restore them.
Since IDEA 15, api which is used in the plugin is not used by IDEA itself: com.intellij.execution.junit2.states.TestState; JUnitTestTreeView classes are going to be deleted for 2016.2. Could you please update the plugin and create test console with help of com.intellij.execution.testframework.sm.SMTestRunnerConnectionUtil#createAndAttachConsole(java.lang.String, com.intellij.execution.process.ProcessHandler, com.intellij.execution.testframework.TestConsoleProperties)?
As I can see you parse results and add tests to the model: org.dpytel.intellij.plugin.maventest.ReportParser#parseTestSuite.
I suggest to create similar logic to import tests done here: https://github.com/JetBrains/intellij-community/blob/master/platform/smRunner/src/com/intellij/execution/testframework/sm/runner/history/ImportedToGeneralTestEventsConverter.java#L61