gpt4 book ai didi

ios - 使用自定义值创建 CLPlacemark 以进行测试

转载 作者:搜寻专家 更新时间:2023-10-31 21:47:49 24 4
gpt4 key购买 nike

我有一个移动 CLPlacemark 对象并使用它们的应用程序,我想对与它们交互的几个组件进行单元测试。为此,我希望能够使用生成具有已知值的模拟 CLPlacemark 的方法来阻止 MapKit 对真正的反向地理定位的调用。

CLPlacemark 只有一个初始化器(复制初始化器)。但是在documentation ,它说:

Placemark objects are typically generated by a CLGeocoder object, although you can also create them explicitly yourself.

但是,大多数成员都是只读的,因此我不确定如何创建具有自定义值的成员。是否可以在 Swift 中以这种方式设置内部属性?如果不是,关于它们在上述引文中的含义有什么想法吗?

最佳答案

我会使用 OCMock ( http://ocmock.org ) 来 stub 调用以创建 stub CLPlacemark 对象,并用您自己的值 stub 它们的 getter 方法。

id userDefaultsMock = OCMClassMock([CLPlacemark class]);

// set it up to return a specific value when stringForKey: is called
OCMStub([userDefaultsMock property]).andReturn(customValue);

关于ios - 使用自定义值创建 CLPlacemark 以进行测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36609611/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com