我和Spock合作并喜欢'where'子句,它允许您轻松地使用多个输入和输出来运行测试用例.例如:
class HelloSpock extends spock.lang.Specification {
def "length of Spock's and his friends' names"() {
expect:
name.size() == length
where:
name | length
"Spock" | 5
"Kirk" | 4
"Scotty" | 6
}
}
Run Code Online (Sandbox Code Playgroud)
Python有类似的东西吗?
文档似乎表明,为了让我将Java类导入JRuby,它们必须位于JAR文件中:
"为了在JRuby的jar文件中使用资源,jar文件必须在类路径上,或者你可以使用require方法使它"(http://wiki.jruby.org/wiki/Calling_Java_from_JRuby#Require_a_jar_file_to_make_resources_in_the_jar_discoverable_within_JRuby)
是否可以直接导入.class文件?
谢谢!
是否可以在场景之间共享网格或几何?
我有多个场景应该相同,大,网格,但当我尝试在它们之间共享网格时,我得到WebGL上下文错误.我怀疑在将网格或几何体添加到场景时会在网格或几何体上设置一些变量,从而防止它们在另一个场景中重复使用.
编辑:
更具体地说,我正在尝试共享在不同场景之间加载了JSONLoader的几何体.即在这个例子中''apps'是一个包含场景的应用程序数组:
var loader = new THREE.JSONLoader();
loader.load('obj/tree/tree.js', function(geometry) {
apps.map(function(app) {
var material = new THREE.MeshBasicMaterial({color: 0xff0000, opacity: 1.0});
var mesh = new THREE.Mesh(geometry, geometry.materials[0]);
app.scene.add(mesh);
});
});
Run Code Online (Sandbox Code Playgroud)
完整来源:https://github.com/bjnortier/three.js/blob/multiple_canvasses_with_json_loader/examples/webgl_multiple_canvases_grid.html
此示例生成WebGL错误:
WebGL:INVALID_OPERATION:useProgram:对象不是来自此上下文
WebGL:INVALID_OPERATION:uniformMatrix4fv:location不是来自当前程序
WebGL:INVALID_OPERATION:uniform3f:不适用于当前程序的位置
WebGL:INVALID_OPERATION:uniform1f:不适用于当前程序的位置
等...