Я использую RSpec для тестирования своих классов на Rails.RSpec - методы тестирования, которые вызывают частные методы, которые следует издеваться
Мне интересно, что является хорошим способом тестирования методов, вызывающих частные методы.
Например, у меня есть этот класс:
Class Config
def configuration(overrides)
@config.merge(overrides)
end
private
def read_config_from_yml
@config ||= YAML.load()...
end
end
Для тестирования методы конфигурации, мы должны как-то издеваться методом read_config_from_yml. Я знаю, что это нехорошо просто издеваться над личным методом read_config_from_yml
или переменной экземпляра @config
, потому что это будет возиться с внутренностями объекта.
Что я могу думать на верхней части моей головы:
сделать read_config_from_yml общественного
добавить сеттер метод для конфигурации (чтобы избежать насмехаясь переменной экземпляра)
Эти хаки? Любые другие идеи?