Testuję prawdziwe połączenia z serwisem WWW przy pomocy OCMock.Opóźniony mechanizm OCMock weryfikujący/radzący sobie z przekroczeniem limitu czasu w testach jednostkowych
Teraz robię coś odczuwalna:
- (void)testWebservice
{
id mydelegatemock = [OCMockObject mockForProtocol:@protocol(MySUTDelegate)];
[[mydelegatemock expect] someMethod:[OCMArg any]];
[SUT sutWithDelegate:mydelegatemock];
// we need to wait for real result
[[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:2.0]];
[(OCMockObject*)mydelegatemock verify];
}
to działa dobrze, ale to oznacza, że każde takie badanie odbędzie 2 sekundy.
Czy mogę ustawić limit czasu? 2 sekundy, i od razu zadzwonić pod numer someMethod
z i zakończyć testowanie?
Być może pochodzi tutaj? ... http://touchalicious.com/blog/2009/11/5/asynchronous-unit-testing-with-ocmock.html –
Dzięki Max - to wygląda jak źródło. Zaktualizowałem oryginalną odpowiedź z linkiem do oryginału. –