KIF 2.0 с Specta 0.2.1
Можно ли использовать KIF 2.0 с Specta 0.2.1? В репозитории KIF GitHub ( https://github.com/kif-framework/KIF) они добавляют пример со Specta, но я не могу заставить это работать, вероятно, потому что Specta использует XCTest, а не SenTestKit больше. Может быть, я могу использовать более раннюю версию Specta, у кого-нибудь это работает?
Спасибо за помощь.
2 ответа
Поправка, кажется, эти ключи не существуют
- (void)failWithException:(NSException *)exception stopTest:(BOOL)stop
{
self.continueAfterFailure = !stop;
[self recordFailureWithDescription:exception.description
inFile:exception.userInfo[@"SenTestFilenameKey"]
atLine:[exception.userInfo[@"SenTestLineNumberKey"] integerValue]
expected:NO];
}
Я обнаружил, что должен был добавить категорию к спекте SPTXCTestCase
чтобы заставить KIF 2.0 и Specta 0.2.1 играть хорошо (несмотря на то, что README говорит в KIF 2.0). Я полагаю, что это действительно так, потому что KIF не работает "из коробки" с XCTest и Specta, переключенным с OCTest на XCTest в версии 2.
SPTXCTestCase+KIF.h
@protocol KIFTestActorDelegate;
@interface SPTXCTestCase (KIF) <KIFTestActorDelegate>
@end
SPTXCTestCase+KIF.m
#import "SPTXCTestCase+KIF.h"
#import <SenTestingKit/SenTestingKit.h>
@implementation SPTXCTestCase (KIF)
- (void)failWithException:(NSException *)exception stopTest:(BOOL)stop {
[self recordFailureWithDescription:exception.userInfo[SenTestDescriptionKey]
inFile:exception.userInfo[SenTestFilenameKey]
atLine:[exception.userInfo[SenTestLineNumberKey] intValue]
expected:NO];
}
- (void)failWithExceptions:(NSArray *)exceptions stopTest:(BOOL)stop {
for (NSException *exception in exceptions) {
[self failWithException:exception stopTest:stop];
}
@end