Как упростить утверждение о блоке, которое содержит NSUInteger? - PullRequest
2 голосов
/ 21 марта 2012

У меня есть проходной тест, который отлично работает, но я хотел бы знать, как можно упростить утверждение, чтобы оно было 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");
}

UPDATE

Я приземлился на этом решении

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

1 Ответ

2 голосов
/ 21 марта 2012

Думали ли вы об использовании OCHamcrest ?

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

Вы даже можете написать собственный сопоставитель:

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