我正在使用带有 ReactiveCocoa 的 MVVM 和 OCMockito 进行测试。假设我有一个 ViewController A 和 ViewController B。A 需要对 B 执行 segue。我想验证当这种情况发生时,A 首先通过分配将必要的数据(“模型”)传递给 B。
B
看起来像这样:
@interface ViewControllerB : UITableViewController
@property(nonatomic, readonly) ViewModel *viewModel;
@end
在视图控制器的某处A
,有一条语句:
viewControllerB.viewModel.model = newModel; // passes new data along for B to display
我想验证此分配是否正在发生,但viewModel
属性是只读的。viewModel 由 viewController 的 init 方法初始化。
我怎么能在这里模拟出 viewModel 呢?
我可以部分模拟 viewControllerB 以返回一个 mock viewModel
,然后我对其进行验证,但https://github.com/jonreid/OCMockito/issues/38说部分模拟已被删除。为什么?!