2015-04-17 4 views
4

Моего класса структурировано что-то вроде этого:гася уровнем класса константы в RSpec

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 

Теперь я хочу модульное тестирование some_method_that_use_above_constant на основе различных значений ONE_CLASS_LEVEL_CONSTANT_BEING_READ_FROM_DB. Можно ли исключить значение ONE_CLASS_LEVEL_CONSTANT_BEING_READ_FROM_DB, чтобы я мог тестировать его для разных значений в rspec?

ответ

7

Согласно this doc с версией 2.11 Rspec это должно работать: stub_const("Abc::ONE_CLASS_LEVEL_CONSTANT_BEING_READ_FROM_DB", 5)

+1

спасибо, звучит многообещающе, дайте мне попробовать и я буду обновлять один раз испытание. –

+1

это работает как волшебство! Спасибо. Я отметил это как ожидаемый ответ! –

Смежные вопросы