2016-10-31 8 views
0

このコードはXcode 8で動作し停止していました。正確に何が間違っているのかよく分かりません。予期せぬOCMMacStateを模擬オブジェクトの代わりに

私が取得しています:

失敗しました: "NSInvalidArgumentException" を、キャッチ -

OCMVerify([mockPaymentQueue addPayment:[OCMArg checkWithBlock:^BOOL(SKPayment *payment) { 
    return [payment.productIdentifier isEqualToString:@"testID"]; 
}]]); 
:コードですが

"[OCMMacroState productIdentifier]認識されていないセレクタは、インスタンス0x7fb07dc885a0に送られました"

これを修正する方法や何が問題なのですか?

答えて

0

これを今すぐ見ました。次のようにコードを書き直すとどうなりますか?

id productIdentifier = payment.productIdentifier; 
OCMVerify([mockPaymentQueue addPayment:[OCMArg checkWithBlock:^BOOL(SKPayment *payment) { 
    return [productIdentifier isEqualToString:@"testID"]; 
}]]); 
+0

支払いオブジェクトはブロック内でアクセスできるため、これを行うことはできません。とにかく、私はそれが助けになるとは思わない。実際には1.5ヶ月前ですが、何とか修正しましたが、私はすでにほとんどこの問題を覚えていません。 – Vive

関連する問題