gpt4 book ai didi

macos - 使用 OCMock 和 GHUnit 测试绘制矩形

转载 作者:行者123 更新时间:2023-12-03 17:24:58 27 4
gpt4 key购买 nike

我有一个自定义 View ,用作 NSStatusItem 的 View 。我想测试在调用 setNeedsDisplay 后是否调用了drawRect。

    CustomView * customView = [[CustomView alloc] initWithFrame:...];

id mockView = [OCMockObject partialMockForClass:customView];
[[mockView expect] setNeedsDisplay:YES];
[[mockView expect] drawRect:NSMakeRect(0, 0, 150, 22)];

[customView setString:@"SomeString"]; // This causes the drawRect message to be sent to customView

[mockView verify];`

非常感谢任何帮助。

我得到的错误是“未调用预期方法:drawRect”

我也在使用 GHUnit 并重写了 shouldRunOnMainThread 以返回 YES。

最佳答案

drawRect: 选择器将从 ViewController 中调用。在上面的测试代码中,您已经创建了 View ,但没有将其添加到任何内容中,因此无论类中的属性如何表现,它都不会被绘制。

如果您创建了一个测试 View Controller ,向其中添加了自定义 View ,然后调用 setString 选择器,我敢打赌您的验证会通过。

关于macos - 使用 OCMock 和 GHUnit 测试绘制矩形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9183033/

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