XCTAssertThrows具体例子
XCTAssertThrowsSpecific example
我有一个 XCTest 用例,代码如下:
- (void)testNilInDict
{
NSMutableDictionary *r = (NSMutableDictionary*) @{@"1": @1, @"2": @2};
XCTAssertThrowsSpecific([r setObject:nil forKey:@"3"], NSInvalidArgumentException);
}
这不构建。然后,我想在网上寻找正确的语法或示例,但我只找到了一个网站列表,这些网站只是重复文档中已经说明的内容。
XCTAssertThrowsSpecific (expression, specificException, format...)
例如找到here, here, here and here。
我的问题是:
- 这个特定函数语法的正确示例是什么?
- 什么是开始寻找这些类型的好网站
示例,没有找到太多硬核代码。
NSInvalidArgumentException
是异常的名称(即 -[NSException name]
),而不是 class。
下面是 XCTAssertThrowsSpecific
的正确用法示例:
XCTAssertThrowsSpecific([obj methodThatThrowsException], NSException, @"Optional assertion failure description");
如果您想知道何时抛出具有特定名称(例如 NSInvalidArgumentException
)的异常,请使用 XCTAssertThrowsSpecificNamed
:
XCTAssertThrowsSpecificNamed([obj methodThatThrowsException], NSException, NSInvalidArgumentException);
我有一个 XCTest 用例,代码如下:
- (void)testNilInDict
{
NSMutableDictionary *r = (NSMutableDictionary*) @{@"1": @1, @"2": @2};
XCTAssertThrowsSpecific([r setObject:nil forKey:@"3"], NSInvalidArgumentException);
}
这不构建。然后,我想在网上寻找正确的语法或示例,但我只找到了一个网站列表,这些网站只是重复文档中已经说明的内容。
XCTAssertThrowsSpecific (expression, specificException, format...)
例如找到here, here, here and here。
我的问题是:
- 这个特定函数语法的正确示例是什么?
- 什么是开始寻找这些类型的好网站 示例,没有找到太多硬核代码。
NSInvalidArgumentException
是异常的名称(即 -[NSException name]
),而不是 class。
下面是 XCTAssertThrowsSpecific
的正确用法示例:
XCTAssertThrowsSpecific([obj methodThatThrowsException], NSException, @"Optional assertion failure description");
如果您想知道何时抛出具有特定名称(例如 NSInvalidArgumentException
)的异常,请使用 XCTAssertThrowsSpecificNamed
:
XCTAssertThrowsSpecificNamed([obj methodThatThrowsException], NSException, NSInvalidArgumentException);