To generate mocks for Omniauth, I Added this method to config/environments/development.rb
def provides_mocks_for(*providers)
providers.each do |provider|
class_eval %Q{
OmniAuth.config.add_mock(provider, {
:uid => 123456 ,
:provider => provider,
:nickname => nickname ,
:info => {
email => "#{provider}@webs.com",
name => full_name_ + provider
}
})
}
end
end
然后,我在同一档案中发言:
provides_mocks_for :facebook, :twitter, :github, :meetup
But I get:
3.1.3/lib/active_support/core_ext/kernel/singleton_class.rb:11:in `class_eval : can t create instance of singleton class (TypeError)