gpt4 book ai didi

android - 使用 mockk 匹配任何可变参数

转载 作者:行者123 更新时间:2023-12-02 13:36:52 33 4
gpt4 key购买 nike

我正在尝试模拟 Android 上下文以从资源 id 返回一个字符串。但是我无法将 stub 与调用匹配,我认为这是因为可变参数。但是我是新手,所以我可能会错过一些非常容易的事情。

我以这种方式模拟上下文:

val context = mockk<Context>()
every { context.getString(any(), any()) } returns stringToReturn

但是在对象上调用 getString 时会引发以下异常:
io.mockk.MockKException: no answer found for: Context(#1).getString(2131689544, [])

如果它很重要,我在被测类中调用类似于此的函数。 formatArgs 可能为空,但不必:
protected fun foo(stringResource: Int, vararg formatArgs: Any) {
val s = context.getString(errorMessageStringResource, *formatArgs)

知道如何解决这个问题吗?

您可以在此处检查项目并重现异常: Github Project

最佳答案

1.9.1 版引入了一些额外的匹配器来匹配可变参数。

https://mockk.io/#varargs

关于android - 使用 mockk 匹配任何可变参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54326914/

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