繁体   English   中英

如何将数据类部分验证为函数参数?

How can I partially verify dataclass as function argument?

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我会让代码说话。

@Test
fun test() {
    data class Activity(
        val type: String,
        val ts: Instant,
    )

    fun persistActivity(a: Activity): Unit = mockk()

    fun createActivity(type: String) {
        persistActivity(Activity(type, Instant.now()))
    }

    every { persistActivity(any()) } just Runs

    createActivity("foo")

    verify {
        persistActivity(Activity("foo", any()))
    }
}

然而这失败了

Failed matching mocking signature for

left matchers: [any()]
io.mockk.MockKException: Failed matching mocking signature for

left matchers: [any()]

如何验证persistActivity()是否传递了一个对其某些字段具有松散约束的数据类? 我可以在不使用繁琐的match {}函数的情况下实现吗?

1 个回复

persistActivity函数没有被persistActivity ,因此验证必须失败。 如果它被正确模拟,您可以使用match进行部分验证:

verify { persistActivity(match { it.type == "foo" }) }
2 如何将类作为函数参数传递

我正在尝试将类作为参数传递给方法,但不知道是否可行。 代替在void runTest(String[] text, int[] number, String url)方法中调用Insertion class ,我可以将其作为参数传递,以便添加其他排序算法。 这是我到目前为止的内容: ...

3 如何将类作为函数参数传递

我知道以前有人问过这个问题,但我不太明白/答案对我没有帮助,所以当我开始学习 Java 时,我将不胜感激。 我想创建一个函数来计算一个类的实例并返回一个数字,例如我有: 我有一个 A[] 数组,其中包含 A、Aa 和 Ab 的实例,我想计算该数组中 A、Aa 或 Ab 的实例,因此我创建了以下 ...

4 如何将类类型作为函数参数传递

我有一个通用函数,它调用 Web 服务并将 JSON 响应序列化回一个对象。 我想要完成的是相当于这个 Java 代码 我试图完成的方法签名是否正确? 更具体地说,将AnyClass指定为参数类型是否正确? 调用该方法时,我将MyObject.self作为返回类值传递,但出现编译 ...

6 javascript部分函数,​​参数

我试图了解部分功能。 我找到了这个示例( http://blog.thesoftwarecraft.com/2013/05/partial-functions-in-javascript.html ),但我无法完全理解。 ...

7 函数参数的IN部分是什么?

我正在尝试在Windows驱动程序上做一些工作,但是在理解示例源代码的一部分时遇到了麻烦。 在我的C经验中,我从未见过这种东西,也找不到任何东西。 无论如何,我想知道参数变量的“ IN”部分是什么? 以下是函数标头的示例。 也可能是其他一些东西,例如“ OUT”,“ INOUT”,“ I ...

2012-08-13 18:57:33 2 77   c
8 带部分的嵌套函数参数

我有这个函数定义,但我想知道是否可以仅使用def和高阶函数来做到这一点(我希望结果以相同的顺序使用args) f2和f3看起来像(保持相关参数的命名): ...

2013-12-11 22:05:59 1 113   clojure
10 Scala案例类:如何验证构造函数的参数

下面是一个case类 ,它验证name参数既不为null也不为空: 正如所料,将null或空字符串传递给name导致IllegalArgumentException 。 是否可以重写验证以获得Success或Failure而不是抛出IllegalArgumentException ...

2013-12-09 19:04:13 1 9563   scala
暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM