Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on May 7th, 2012  |  syntax: None  |  size: 0.90 KB  |  hits: 14  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Ruby/Rails: class_eval doesn't want to evaluate this code
  2. def provides_mocks_for(*providers)
  3.     providers.each do |provider|
  4.       class_eval %Q{
  5.         OmniAuth.config.add_mock(provider, {
  6.           :uid => '123456',
  7.           :provider => provider,
  8.           :nickname => 'nickname',
  9.           :info => {
  10.             'email' => "#{provider}@webs.com",
  11.             'name' => 'full_name_' + provider
  12.           }
  13.         })
  14.       }
  15.     end
  16.   end
  17.        
  18. provides_mocks_for :facebook, :twitter, :github, :meetup
  19.        
  20. 3.1.3/lib/active_support/core_ext/kernel/singleton_class.rb:11:in `class_eval': can't create instance of singleton class (TypeError)
  21.        
  22. class Foo
  23.   %w[foo bar].each do |name|
  24.     self.class_eval <<-RUBY, __FILE__, __LINE__ + 1
  25.       def #{name}
  26.         puts '#{name}'
  27.       end
  28.     RUBY
  29.   end
  30. end
  31.        
  32. class Foo
  33.   %w[foo bar].each do |name|
  34.     define_method name do
  35.       puts name
  36.     end
  37.   end
  38. end