【发布时间】:2017-01-03 18:03:43
【问题描述】:
我已经实现了一些 ExternalStrctures(作为“FFI 工作”的一部分),对于其中一些我想实现最终化以回收外部内存。
我正在尝试为此编写一些测试,并认为了解#finalize 是否被调用的一个好方法是更改我用于测试的特定实例的行为。如果可能的话,我宁愿不要用支持测试的代码来污染实现。
我相信模拟特定方法和更改特定实例行为通常是一个很好的测试工具。
我知道这在其他方言中是可能的,并且我过去在 Squeak 中使用 #doesNotUnderstand 自己实现了它,但我想知道是否有更简洁的方法,可能受 VM 支持。
有没有办法改变特定实例在 Cuis/Squeak/Pharo 中回答特定消息的方式?
【问题讨论】: