我很好奇我是否可以以某种方式模拟计数器缓存的测试。现在我正在创建所有记录来测试 counter_cache。有什么好的做法可以有效地测试计数器缓存吗?
编辑: 我只是对测试感兴趣,计数器缓存存在于某个关联上。
我很好奇我是否可以以某种方式模拟计数器缓存的测试。现在我正在创建所有记录来测试 counter_cache。有什么好的做法可以有效地测试计数器缓存吗?
编辑: 我只是对测试感兴趣,计数器缓存存在于某个关联上。
添加:counter_cache
选项时,ActiveRecord 定义了 2 个回调(源代码)。您可以使用 Mocha 来检查回调是否被执行。
instance.expects(:belongs_to_counter_cache_after_create_for_MODELNAME).returns(true)
添加一个条目,使用 counter_cache 重新加载您的对象并检查它是否增加。