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 –