У меня есть опция, определенная в конфигурации приложения. Мой класс, который я хочу проверить, определяется в драгоценном камне (не написанном мной). Я хочу, чтобы снова открыть класс:RSpec: stubbing Значение Rails.application.config не работает при повторном открытии классов?
Myclass.class_eval do
if Rails.application.config.myoption=='value1'
# some code
def self.method1
end
else
# another code
def self.method2
end
end
end
Я хочу, чтобы проверить этот код с помощью RSpec 3:
# myclass_spec.rb
require "rails_helper"
RSpec.describe "My class" do
allow(Rails.application.config).to receive(:myoption).and_return('value1')
context 'in taxon' do
it 'something' do
expect(Myclass).to respond_to(:method1)
end
end
end
Как окурок значения приложения конфигурации перед запуском кода, который открывает заново класс.