gpt4 book ai didi

Scalamock:如何获取 "expects"进行代理模拟?

转载 作者:行者123 更新时间:2023-12-02 17:23:43 28 4
gpt4 key购买 nike

我正在将 Scalamock 与 ScalaTest 结合使用,并尝试模拟 Java 接口(interface)。我目前有:

private val _iface = mock [MyInterface]

现在我想做

_iface expects `someMethod returning "foo" once

但是编译器没有找到期望

我导入了 org.scalatest._org.scalamock.scalatest._。我还缺少什么?

最佳答案

首先,代理模拟在 ScalaMock 3 中支持得不是很好,我认为它们将在 ScalaMock 4 中完全删除。你真的需要使用代理模拟而不是宏模拟吗?

这应该有效:

package example

import org.scalatest.FlatSpec
import org.scalatest.Matchers
import org.scalamock.scalatest.proxy.MockFactory

trait MyInterface {
def someMethod : String
}

class MyTest extends FlatSpec with Matchers with MockFactory {
"MyInterface" should "work" in {
val m = mock[MyInterface]
m.expects('someMethod)().returning("foo")
m.someMethod shouldBe "foo"
}
}

如果没有,请检查ScalaMock proxy mocks unit tests了解更多示例。

关于Scalamock:如何获取 "expects"进行代理模拟?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29841267/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com