Tôi có một tùy chọn được xác định trong cấu hình ứng dụng. Lớp tôi muốn kiểm tra được định nghĩa trong một viên ngọc (không phải do tôi viết). Tôi muốn mở lại các lớp:RSpec: Giá trị Rails.application.config đang ráo riết không hoạt động khi mở lại các lớp học?
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
Tôi muốn thử nghiệm mã này sử dụng 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
Làm thế nào để còn sơ khai giá trị ứng dụng cấu hình trước khi chạy đoạn code đó mở lại một lớp.