IntelliJ IDEA 14 对 Spock Framework 支持的回归?

Regression of IntelliJ IDEA 14 support for Spock Framework?

从 IDEA 13.1.x 升级到 14.x(目前为 14.0.2)后,我看到了对 Spock Framework Mock() 和 Stub() 方法的支持变得更糟了。

更具体地说,我的意思是 in-line 方法 stubbing/mocking 闭包如下:

MyType stub = Stub {
    myMethod() >> { /* do something */ }
}

IDEA 13 知道 存根类型的可用方法,这在下面的屏幕截图中可见。

size() 方法没有下划线。它可以导航到 auto-completed,检查可能的参数类型等等 - 通常 IDE 的东西。 'stub closure'.

中的任何其他 List 方法也是如此

而IDEA 14却没有这个功能,实在是太可惜了。下面的屏幕截图显示了它。

size() 方法带有下划线并显示为灰色。 IDE 似乎不知道发生了什么。

这同样适用于 Mock { } 方法事件,如果使用类型作为参数调用,如 Mock(MyType) { }(分别为 Stub(MyType) { }

我的问题是 - 是只有我一个人还是 bug/regression?或者我可能需要调整一些设置?

编辑:这似乎是一个错误/回归。我举了个bug in youtrack。请投票。

存储系统中存在错误,即 GDSL 自身运行,但 IDE 次启动时状态不一致。

作为临时解决方案:

  • 项目视图 -> 外部库 -> spock-core
  • 在编辑器中打开 org.spockframework.idea.spock.gdsl
  • 等待有关禁用 GDSL 的通知发出
  • 在通知中使用激活link

每次启动 Idea 时都应启用 GDSL。

此错误已修复,将尽快发布修复程序。