问题标签 [scalamock]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4986 浏览

scala - 如何使用 scalamock 模拟带有构造函数参数的类

我知道如何模拟没有构造函数参数的类

例如, myMock = mock[MockClass]

但是,如果类有构造函数参数,你会怎么做?

更具体地说,我正在尝试模拟 finatra 类:ResponseBuilder

https://github.com/ImLiar/finatra/blob/master/src/main/scala/com/twitter/finatra/ResponseBuilder.scala

0 投票
1 回答
1318 浏览

mongodb - Scalamock:模拟通用案例类导致类型不匹配

我在我的应用程序中使用 Mongodb 作为持久性,我目前正在为我的代码编写测试。我的 CUT 如下所示

我的模拟通过使用隐式得到正确注入。我正在嘲笑 getCollection 调用,它本身应该导致另一个模拟,这次是类型

所以我正在做的是以下

但这会导致以下错误

TResult 是来自 mongoCollection 的通用参数,如下所示:

似乎通用参数没有正确“调整”(我不知道如何调用它)到 Document

0 投票
1 回答
273 浏览

scala - 无法使用重载的构造函数存根类 - Scalamock

我正在尝试使用以下签名对名为“Producer”的类进行存根:

编码val fakeProducer = stub[Producer[String, String]]

以下是错误: 在此处输入图像描述

我已经被这个问题困扰了一段时间了。有没有办法我们可以创建这个存根对象?任何帮助,将不胜感激。

此致。

0 投票
0 回答
268 浏览

scala - 递归函数的ScalaMock测试失败

我已经创建了抓取网站的代码。两个问题。

  1. 该代码应该是递归的以获取来自同一域的所有链接,但它会停止而不检索所有链接。感觉循环函数有问题

  2. 模拟函数的测试代码失败。实现 foo 函数的类似代码对我有用,但这个没有。

类爬虫{

}

编辑 2:使用 mockFunction

0 投票
1 回答
320 浏览

scalamock - 最后验证时如何更正“验证应该在所有被测代码都被执行后出现”?

我收到错误“验证应该在所有被测代码都被执行后出现”,如下所示:

testCowProcesses在另一个文件中定义,如下所示(缩写):

我不太明白错误信息。如果我注释掉这一verify行,测试就会运行。或者,如果我注释掉第一个测试,则可以运行第二个测试。测试类中没有其他测试。这似乎表明存根对象不能被重用,因为它们在 mockito 中(我正在改编来自 mockito 的代码)。

重新实例化模拟对象的最佳解决方案是,也许通过转换CowTestersclass?

编辑:

我确认了上述建议有效(不确定它是否是最好的),但同时我做了一些更复杂的事情来让我通过编译:

0 投票
1 回答
1031 浏览

scala - 如何使用 ScalaMock 模拟对 trait 的方法调用?

在您指向文档之前,请指出这个最小的失败示例有什么问题:

结果在java.lang.NoSuchMethodException: com.sun.proxy.$Proxy4.mock$f$0()第 11 行:(foo.f _).when ...

根据文档,这应该有效。我在这里想念什么?

0 投票
1 回答
451 浏览

scala - 如何模拟返回类型为 Option[SomeCaseClassDefinedInsideThisClass] 的方法的 None 的返回

我希望这个测试能够通过:

但它失败了:

但是,这有效:

唯一的区别是案例类 FruitName 是在 FruitImpl 类之外定义的。为什么一个版本的代码失败而另一个没有?应该如何解决第一个示例中的错误?

0 投票
1 回答
698 浏览

scala - ScalaMock:通过惰性验证模拟具有初始化的特征

我有以下要模拟的特征:

使用 ScalaMock 时,我尝试做

java.lang.NullPointerException由于存在私有惰性 val,它可能无法正确初始化此特征的模拟版本而失败?

初始化这种特征的正确方法是什么?

0 投票
1 回答
549 浏览

unit-testing - scalamock 模拟 java 接口方法 varargs

我需要从 java 接口模拟一个带有可变参数的方法

我在嘲笑它

但得到一个错误

另外,我尝试传递 IndexPrivilege 的 Seq 无济于事

有任何想法吗?

0 投票
1 回答
651 浏览

scala - 在 MockFactory 之外使用 scalamock

我想使用黄瓜功能文件将集成测试添加到我的项目中。我以这个项目为例进行了这项工作:https ://github.com/jecklgamis/cucumber-jvm-scala-example

我遇到的问题是当我想模拟一些对象时。ScalaMock 和 EasyMock 似乎都需要 scalatest 或类似的东西。

我的 build.sbt 有以下几行:

我的 stepdef 文件有这个:

mock[JPigpio]调用给出了符号未找到错误。我假设是因为这个类没有扩展 MockFactory。

如何在 MockFactory 类之外使用 scalamock?