4
我很困惑这个符号<:和返回类型T => T。 这似乎返回一个函数。当单元测试这个函数时,我得到了一个函数。我如何检查结果?单元测试函数返回函数
def prepend[T <: Message](node: Set[String]): T => T = { out =>
...
out.append("test")
}
我很困惑这个符号<:和返回类型T => T。 这似乎返回一个函数。当单元测试这个函数时,我得到了一个函数。我如何检查结果?单元测试函数返回函数
def prepend[T <: Message](node: Set[String]): T => T = { out =>
...
out.append("test")
}
T <: Message
装置T应该是延伸消息的任何类型。
现在功能相等/同构是TTBOMK不可能的。这意味着没有办法比较a == b,其中a:T => T和b:T => T。
您只能生成随机输入并确认它们给出相同的结果。不是平等的证明,但它可能比没有好。
如果你的结果是val t: T=>T = prepend(...)
你可以运行t
作为t(some T)
。
只是测试返回的函数是否按预期工作。 –
请参阅http://stackoverflow.com/questions/12725257/how-to-compare-scala-function-values-for-equality –