我使用Kiwi框架通過Magical Record庫來測試我的代碼和Core Data之間的交互。神奇記錄在NSManagedObject上定義了一個類別,它添加了一些不錯的方法,比如MR_createInContext:(NSManagedObjectContext *)上下文。我試圖測試是否這個方法被調用,並且被調用了多少次。Kiwi + MagicalRecord方法不存在
it(@"should create new object for me object with new id", ^{
[[[NSManagedObjectContext MR_contextForCurrentThread] should] receive:@selector(MR_createInContext:)];
Me *me = [Me meWithID:@"12345" inContext:[NSManagedObjectContext MR_contextForCurrentThread]];
[me shouldNotBeNil];
[[me.idNumber should] equal:@"12345"];
});
的問題是,獼猴桃似乎並沒有看到該類別儘管
#import <CoreData+MagicalRecord.h>
測試.m文件
。
ME_ShouldCreateNewObjectForMeObjectWithNewId(EHMeSpecs)失敗,「我,我,應該創建新的對象,我用新的ID對象」 [失敗],不能存根-MR_createInContext:因爲沒有這樣的方法存在
我怎樣才能使獼猴桃知道的類別?
該方法創建一個新的或返回一個提取的對象。有必要測試一下,因爲我想確認第一次看到該對象時,它將被創建,並且nil不會被返回。因此MR_createInContext將被提取。順便說一句,我發現錯誤,這種方法是在NSManagedObject而不是上下文上定義的。 – foFox 2013-05-02 21:29:06
MR_createInContext將被調用* – foFox 2013-05-02 21:35:49