Ios 如何使用猕猴桃取消发布方法
我有一个宏用于测试,它创建了一个导航控制器,将其设置为主窗口的根视图控制器,并将要测试的视图控制器放在导航控制器中 我还想为每次调用pushViewController:animated:将动画参数更改为NO 我怎样才能做到这一点 我尝试使用stub:withBlock:并在块内调用pushViewController:animated:,将视图控制器按参数[0]和“否”,但这会导致无限循环 还有存根:withArguments:但在这种情况下,我没有对正在推送的视图控制器的引用,因为它是一个在多个地方使用的宏 我能想到的唯一方法是使用stub:withBlock:并在块内部删除stub,然后通常调用pushViewController:params[0]:否,但我找不到删除stub的方法Ios 如何使用猕猴桃取消发布方法,ios,kiwi,Ios,Kiwi,我有一个宏用于测试,它创建了一个导航控制器,将其设置为主窗口的根视图控制器,并将要测试的视图控制器放在导航控制器中 我还想为每次调用pushViewController:animated:将动画参数更改为NO 我怎样才能做到这一点 我尝试使用stub:withBlock:并在块内调用pushViewController:animated:,将视图控制器按参数[0]和“否”,但这会导致无限循环 还有存根:withArguments:但在这种情况下,我没有对正在推送的视图控制器的引用,因为它是一个在
有什么帮助吗?Kiwi的存根功能并不是专门为此设计的 它有两个主要用途: 通过将方法实现替换为伪方法实现,将测试中的代码与系统的其余部分隔离开来 断言系统中对象之间的API契约 如果您想全局更改方法的默认行为,我认为您所追求的是一个更通用的方法swizzling解决方案。Kiwi的存根功能可以通过swizzling部分实现,但它是一个更为集中的工具