如何简化包含NSUInteger的ocunit断言?

时间:2012-03-21 01:24:47

标签: objective-c ocunit

我有一个通过测试工作正常,但我想知道如何将断言简化为1行而不是3(如何基本上转换这些内联)

- (void)testResponseDataResetWhenResponseReceived
{
    self.sut.responseData = self.data;
    [self.sut connection:nil didReceiveResponse:nil];
    NSUInteger len = self.data.length; //this data type is NSData *
    NSUInteger expectedLen = 0;
    STAssertEquals(len, expectedLen, @"NSData was not reset");
}

更新

我登陆了这个解决方案

STAssertEquals([self.data length], 0U, @"NSData was not reset");

1 个答案:

答案 0 :(得分:2)

您是否考虑过使用OCHamcrest

assertThatInt(self.data.length, equalToInt(0));

您甚至可以编写自定义匹配器:

assertThat(self.data, is(reset()));