MyModel.stub!l works in 1.1.11 but fails in 1.1.12


#1

I have a controller spec that works find with Rails 2.2.2 and Rspec-
Rails 1.1.11. The code is:

@activity=mock_model(Activity, :id => 7)
Activity.stub!(:get).with(“7”).and_return(@activity

When I update to 1.1.12

ArgumentError in ‘ActivitiesController’ wrong number of arguments (2
for 1)

For some reason the file
rspec-1.1.12/lib/spec/mocks/proxy.rb at line 149
149 return @target.respond_to?(sym, true)

is attempting to send two arguments. Rspec 1.1.11 did not have the
second argument (‘true’). What is going on here?

Any help appreciated.

Brad


#2

On Wed, Feb 4, 2009 at 7:42 PM, Brad removed_email_address@domain.invalid
wrote:

For some reason the file
rspec-1.1.12/lib/spec/mocks/proxy.rb at line 149
149 return @target.respond_to?(sym, true)

is attempting to send two arguments. Rspec 1.1.11 did not have the
second argument (‘true’). What is going on here?

http://www.ruby-doc.org/core/classes/Object.html#M000333

The optional second argument determines whether to include private
methods or not. We added it to resolve a bug:

http://rspec.lighthouseapp.com/projects/5645/tickets/450

Is the code in question overriding respond_to? ?


#3

On Feb 4, 10:22 pm, David C. removed_email_address@domain.invalid wrote:

for 1)
The optional second argument determines whether to include private
methods or not. We added it to resolve a bug:

http://rspec.lighthouseapp.com/projects/5645/tickets/450

Is the code in question overriding respond_to? ?

That is the problem! The Activities has a method_missing and
responds_to? that falls back to super.
Thank you very much for your prompt (and helpful) response, David.
Not having my Spec’s work drive me crazy : )

Brad