2014-01-03 4 views
1

Возможно ли использовать KIF 2.0 с Specta 0.2.1? В репозитории KIF GitHub (https://github.com/kif-framework/KIF) они добавляют пример с Specta, но я не могу заставить это работать, возможно, потому, что Specta использует XCTest, а не SenTestKit. Может быть, я могу использовать более раннюю версию Specta, у кого-то это работает?KIF 2.0 с Specta 0.2.1

Спасибо за помощь.

ответ

0

Я обнаружил, что мне нужно было добавить категорию в SPTXCTestCase от Specta, чтобы заставить KIF 2.0 и Specta 0.2.1 играть хорошо (несмотря на то, что README говорит в KIF 2.0). Я считаю, что это на самом деле, потому что КИФ не работает из коробки с 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 
+0

'Использование необъявленного идентификатора 'SenTestDescriptionKey'' –

+0

Он включен в , который KIF импортирует как часть своего Pod. Я полагаю, что если вы не используете стручки, вам придется импортировать их вручную. Я отредактирую свой ответ, чтобы включить его. –

0

Поправка, кажется эти ключи не существуют

- (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]; 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^