AMTestHelpers
安装
AMTesthelpers 可通过 CocoaPods 获得。要安装它,只需将以下行添加到 Podfile 中的测试目标。
pod "AMTestHelpers"
使用
一旦 AMTestHelpers
被添加到您的测试目标,所有对以下方法的调用将通过内置方法交换进行模拟:
UIViewController
presentViewController: animated: completion
dismissViewControllerAnimated: completion
UIResponder
becomeFirstResponder
resignFirstResponder
isFirstResponder
UIViewController
当调用presentViewController: animated: completion:
时,属性AM_testPresentedViewController
将被设置为应呈现的视图控制器,并且随后将同步调用完成块。
当调用dismissViewController: animated: completion:
时,属性AM_testPresentedViewController
将设置为nil
,并且随后将同步调用完成块。
示例
func test_nextButtonIsPressed_presentsNextViewController() {
// when
viewControllerBeingTested.nextButtonIsPressed()
// then
XCTAssert(viewControllerBeingTested.AM_testPresentedViewController is NextViewController)
}
UIResponder
当调用becomeFirstResponder
时,属性AM_isFirstResponder
将被设置为true
。当调用resignFirstResponder
时,它将被设置为false
。isFirstResponder
将返回AM_isFirstResponder
的值。
UIAlertController
此库向UIAlertAction
添加了一个executeHandler()
函数,并将一个executeAction(withTitle:)
函数添加到UIAlertController
,可以在单元测试中用于程序化调用UIAlertController
上动作的处理程序。
作者
安东尼·米勒, [email protected]
许可证
AMTestHelpers在MIT许可证下可用。有关更多信息,请参阅LICENSE文件。