我的课程结构如下:

class Abc
    ONE_CLASS_LEVEL_CONSTANT_BEING_READ_FROM_DB = GloablAttributeValue.read_from_db
    def some_method_that_use_above_constant
        # this function behaves differently for different values of ONE_CLASS_LEVEL_CONSTANT_BEING_READ_FROM_DB
    end
end

现在,我想根据从数据库中读取的一个类级常数的不同值,对使用上述常数的一些方法进行单元测试。
这是否有可能将从数据库读取的一个类级常数的值截短,以便我可以在rspec中测试它的不同值?

最佳答案

根据this doc,对于rspec的版本2.11,这应该可以工作:
stub_const("Abc::ONE_CLASS_LEVEL_CONSTANT_BEING_READ_FROM_DB", 5)

09-28 02:48