Tag: mocking

如何rspec模拟ruby rails logger类

嗨我,并尝试rspec模拟以下类: class Person def initialize(personid) Rails.logger.debug “Creating person with id #{personid}” end end 使用这个: require ‘spec_helper’ describe Person do describe “#initialize” do let(:rails_mock) { double(“Rails”).as_null_object } let(:logger_mock) { double(“Rails.logger”).as_null_object } it “logs a message” do rails_mock.stub(:logger).and_return(logger_mock) logger_mock.should_receive(:debug) Person.new “dummy” end end end 并收到此消息: RSpec :: Mocks :: MockExpectationError 🙁 Double“Rails.logger”)。debug(any args) 预计:1次 收到:0次 任何帮助都会很棒!