什么符号 -> 在 spock 框架中意味着什么?
What sign -> means in spock framework?
谁能解释一下在 spock 框架中 sign -> 是什么意思?
例如我们有如下代码:
given:
UserService service = Stub()
service.save({ User user -> 'Michael' == user.name }) >> {
throw new IllegalArgumentException("We don't want you here, Micheal!")
}
我知道这段代码是做什么的,但我不知道这段代码中的角色是如何有符号 -> 的。
Spock 框架假定对 Groovy 语言有基本的理解,有时会出现 Groovy 更复杂的部分(如您的示例)。
->
表示 闭包,如 Groovy documentation 中所述。
例如,Groovy 中的闭包可能如下所示:
def greeting = "Hello"
def sayHiTo = { name -> greeting + " " + name }
println sayHiTo("user3664097")
谁能解释一下在 spock 框架中 sign -> 是什么意思?
例如我们有如下代码:
given:
UserService service = Stub()
service.save({ User user -> 'Michael' == user.name }) >> {
throw new IllegalArgumentException("We don't want you here, Micheal!")
}
我知道这段代码是做什么的,但我不知道这段代码中的角色是如何有符号 -> 的。
Spock 框架假定对 Groovy 语言有基本的理解,有时会出现 Groovy 更复杂的部分(如您的示例)。
->
表示 闭包,如 Groovy documentation 中所述。
例如,Groovy 中的闭包可能如下所示:
def greeting = "Hello"
def sayHiTo = { name -> greeting + " " + name }
println sayHiTo("user3664097")