我想对NSString
单位测试它的值,但我需要能够接受两个“正确”的值。不只是一个。我该怎么做?
我知道我可以这样做:
STAssertEqualObjects(node.name, @"attachment", @"invalid name");
但是,我如何接受@"attachment"
和@"table"
值是正确的,如果NSString
等于任何一个,则单元测试不会失败。
谢谢。
答案 0 :(得分:1)
没有特别针对此的宏。您可以使用STAssertTrue
和包含可接受值的NSArray
字面值:
STAssertTrue([@([@"attachment", @"table"]) containsObject:myString]), @"invalid name");
您需要额外的一对括号来隐藏处理STAssertTrue
的宏预处理器中的逗号。
或者你可以拼出来:
STAssertTrue([@"attachment" isEqual:node.name] || [@"table" isEqual:node.name], @"invalid name");