如何在scala中模拟静态函数(对象函数,而不是类函数)
你可能会觉得很有启发性如何在scala中模拟静态函数(对象函数,而不是类函数),scala,object,easymock,Scala,Object,Easymock,你可能会觉得很有启发性 虽然使用任何工具都不可能对对象进行纯粹的模拟,但上面的线程确实为您提供了一些选项。所有这些都会在一定程度上改变你的设计。你不会。A不仅不是类型或类,而是实例,而且是单例(A.type)的实例 相反,您要做的是将方法放在一个特征上,并使对象扩展它。然后,你模拟特征而不是模拟对象。(对象,而不是对象?适用的更新留给海报)对象A的类型是类型。如果要定义类型A,则需要定义类{/*如现在的*/},然后对象A扩展A。 Object A { def a = { something}
虽然使用任何工具都不可能对对象进行纯粹的模拟,但上面的线程确实为您提供了一些选项。所有这些都会在一定程度上改变你的设计。你不会。
A
不仅不是类型或类,而是实例,而且是单例(A.type
)的实例
相反,您要做的是将方法放在一个
特征上,并使对象扩展它。然后,你模拟特征而不是模拟对象。(对象
,而不是对象
?适用的更新留给海报)对象A的类型是类型
。如果要定义类型A
,则需要定义类{/*如现在的*/}
,然后对象A扩展A
。
Object A {
def a = { something}
}
// I've import A, but still have error message: not found: type A
val x = mock[A]