首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >方法,并将其返回值动态设置为输入参数。

方法,并将其返回值动态设置为输入参数。
EN

Stack Overflow用户
提问于 2013-11-25 06:42:22
回答 2查看 740关注 0票数 1

我想动态地将一个依赖于参数的值返回给模拟的方法,在概念上如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[realObject stub] myMethod:CAPTUREDARGUMENT) andReturn:myMethod:CAPTUREDARGUMENT];

或者访问像OCMock这样的块中的调用:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
void (^theBlock)(NSInvocation *) = ^(NSInvocation *invocation) {
    /* code that reads and modifies the invocation object */
};
[[[mock stub] andDo:theBlock] someMethod:[OCMArg any]];

这和猕猴桃有可能吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-26 02:05:18

使用stub:withBlock:是可能的

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[realObject stub:@selector(myMethod:) withBlock:^id(NSArray *params) {
    return [params objectAtIndex:0];
];
票数 5
EN

Stack Overflow用户

发布于 2013-11-26 03:43:18

捕获参数的推荐方法是使用捕获间谍,例如:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
id testDouble = [SomeClass mock];
object.property = testDouble;

KWCaptureSpy *spy = [testDouble captureArgument:@selector(methodWithParam:) atIndex:0];

[object doSomethingWithProperty];

[[spy.argument should] equal:someResult];

它也可以使用stub:withBlock:实现,但是捕获间谍在检查方法参数的任务时往往会使您的意图更加清晰。这使得规范更具可读性。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20195863

复制
相关文章
JavaScript 函数中带有参数并返回值的函数
document.getElementById("demo").innerHTML=myFunction(4,3);
好派笔记
2021/09/18
5.7K0
js动态创建标签,并设置样式
<style type="text/css"> .content .miniNav{ position: relative; width: 100%; height: auto; border-bottom: 1px solid #e5e5e5; background: transpar
IT工作者
2022/02/08
12.5K0
Android 动态添加View 并设置id
主页面布局(main_activity.xml) LinearLayout 里面加一个Button,注意这里的LinearLayout要有orientation <?xml version="1.
yechaoa
2022/06/10
2.3K0
Android 动态添加View 并设置id
kubernetes中为容器设置内核参数
注意:此方式如果使用了非安全内核参数,必须要先修改节点的kubelet配置,增加--allowed-unsafe-sysctls字段,并允许相关非安全参数,否则创建后,pod会报错SysctlForbidden,并大量不断创建pod,可能将集群搞挂
铜锣烧
2022/12/09
1.7K0
Java基础-数组作为方法参数和返回值
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
cwl_java
2019/11/27
2.4K0
Java基础:二、方法、参数和返回值(6)
Java的方法决定了一个对象能够接收什么样的消息。方法的基本组成部分包括:名称、参数、返回值和方法体:
桑鱼
2020/03/17
8630
ubuntu安装Microsoft Edge并设置为中文
跟上述方法相同,区别在于microsoft-edge-dev文件的位置,我也不知道在哪。
全栈程序员站长
2022/09/13
1.3K0
ubuntu安装Microsoft Edge并设置为中文
swagger中参数为数组dataType的设置
swagger中参数为数组dataType的设置
Java架构师必看
2021/09/22
3.5K0
swagger中参数为数组dataType的设置
JDK1.9-数组作为方法参数和返回值
以前的方法中我们学习了方法的参数和返回值,但是使用的都是基本数据类型。那么作为引用类型的数组能否作为 方法的参数进行传递呢,当然是可以的。
cwl_java
2022/11/30
6350
JDK1.9-数组作为方法参数和返回值
AOP高级用法——获取方法的参数和返回值
我们平时在使用springAop的时候,经常是将某一个方法定义为一个切入点,用来做前置,后置或环绕增强,但如果想得到切入点方法的参数,以及它的返回值就需要做一些特定的配置。
Java深度编程
2020/06/10
14K0
kubernetes 实用技巧: 为 Pod 设置内核参数
自 k8s 1.12 起,sysctls 特性 beta 并默认开启,允许用户在 pod 的 securityContext 中设置内核参数,用法示例:
imroc
2021/05/31
4.3K1
keras设置theano为backend的方法
在一些开源程序中,需要设置keras的backend为theano,这个主要原因是在安装tensorflow中,默认为把keras的backend为tensorflow,因此需要进行程序中动态调整,其调整方法也比较简单,具体如下:
sparkexpert
2019/08/29
7500
keras设置theano为backend的方法
[Python基础06]函数的参数&返回值
我们通常在进行一些功能处理的过程中,需要执行一行或者多行代码来完成整个业务流程的处理,如:
周小董
2022/04/12
4K0
[Python基础06]函数的参数&返回值
python利用可变长度参数定义一个函数,输入为任意个数的数值,功能为对输入数据求和并输出;
~关注我 带你看更多精品技术和面试必备 号码 1153132260 def Sum(args): sum=0 for i in range(0,len(args
CaesarChang张旭
2021/01/26
2.4K0
python利用可变长度参数定义一个函数,输入为任意个数的数值,功能为对输入数据求和并输出;
用Mockito来mock返回值类型为void的方法
开发中有些依赖的接口还没有开发完成、有些接口还调不通等情况,可以使用Mockito对接口进行mock,然后去测试逻辑,非常好用。
明明如月学长
2021/08/27
10.2K0
方法的返回值类型为引用数据类型时
方法的返回值类型为引用数据类型: 基本数据类型:(基本类型太简单,我不准备讲解) 引用数据类型: 1.方法的返回值类型为类名时:返回的是该类的对象。 2.方法的返回值类型为抽象类名时:返回的是该类的子类对象。 3.方法的返回值类型为接口名时:返回的是该接口的实现类的对象。
黑泽君
2018/10/11
2.6K0
VFP调用模式表单并接收返回值的方法与原则
虽然猫猫在文章中反复强调要做错误处理,很多人就是不听,还习惯性到处COPY代码,代码还不消化,到处乱用。
加菲猫的VFP
2023/01/03
1.1K0
小知识:开启NTP服务并设置为开机启动
我的一套测试环境发现时间慢了10分钟,影响我做各类测试。 首先就想到NTP服务,发现已安装NTP安装包,也有默认的NTP配置文件,只是没有启用。 用到的相关命令参考如下:
Alfred Zhao
2023/10/10
6430
java中给方法的参数设置默认值,java设置可选参数
今天在调整一个定时任务时需要将固定写死的查询日期通过外部传参来控制,如果没有传值给个默认值,于是了解了下java函数的参数默认值
高久峰
2023/06/29
7.7K0
树莓派 设置系统中文 并安装中文输入法
                树莓派 设置系统中文 并安装中文输入法 首先 设置 中文输入法 命令行执行   sudo apt-get install scim-pinyin scim  然后设置系统中文 命令行 执行 sudo raspi-config  然后按照图中红色部分走就行了 然后 选择  如图的几个打上星号  采取默认  然后 就设置好了
Fivecc
2022/11/21
3.6K0
树莓派 设置系统中文 并安装中文输入法

相似问题

为任何整数输入参数设置模拟返回值

11

如何传递以返回值为参数的动态方法?

24

根据方法输入动态返回值

10

Java将其设置为超级参数

13

获取数据,将其设置为状态,并根据输入长度更新该状态

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文