Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在spock中模拟对象的可选列表_Java_Unit Testing_Spock - Fatal编程技术网

Java 如何在spock中模拟对象的可选列表

Java 如何在spock中模拟对象的可选列表,java,unit-testing,spock,Java,Unit Testing,Spock,如何模拟Spock中的可选对象列表 假设我有一个返回可选的函数。我想嘲笑这样的名单。 我试过: def optional = Optional.of(new Foo()) def optionalMock= [].collect { i -> optional } 或 它仍然返回可选的.empty 提前感谢请学习如何通过对话提问。然后编辑你的问题,提供一整套被测试和被测试的类,而不仅仅是断章取义的片段。无论如何,[].collect(…)表示您正在将一个空列表的所有元素映射到其他元素,这

如何模拟Spock中的可选对象列表

假设我有一个返回
可选
的函数。我想嘲笑这样的名单。
我试过:

def optional = Optional.of(new Foo())
def optionalMock= [].collect { i -> optional }

它仍然返回可选的.empty


提前感谢

请学习如何通过对话提问。然后编辑你的问题,提供一整套被测试和被测试的类,而不仅仅是断章取义的片段。无论如何,
[].collect(…)
表示您正在将一个空列表的所有元素映射到其他元素,这总是会导致另一个空列表,因为没有要映射的内容。此外,请注意,
Optional
表示您有一个
Optional
包含对象的
列表,而不是一个
列表
包含
Optional
s。你也没有解释你到底想嘲笑什么以及为什么。所以请提供MCVE,否则没有人能真正帮助你。在回答问题之前先要理解问题。我忘了提到,如果您只想创建一个简单的
Optional
列表,其中包含一个
Foo
元素,您可以使用
Optional.of([new Foo()])
def optionalMock= [].collect { i -> GroovyMock(Foo) }