What's diffrence between ({:these=>"params"}) and ({"these"


#1

When i use rspec(with built-in mock framework) ,error occurs.
I use rspec_scaffold generate a example as below:

  it "should expose a newly created awarding_body as @awarding_body"

do
AwardingBody.should_receive(:new).with(:these
=>‘params’).and_return(mock_awarding_body(:save
=> true))

     post :create,  :awarding_body => {:these => 'params'}
    assigns(:awarding_body).should == (mock_awarding_body)
  end

After execute the example , a error occurs as below :

Mock ‘Class’ expected :new with ({:these=>“params”}) but received it
with ({“the
se”=>“params”})


#2

On 9 Oct 2008, at 10:05, Guofeng Ma wrote:

Mock ‘Class’ expected :new with ({:these=>“params”}) but received it
with ({“the
se”=>“params”})

Probably because actioncontroller magics the params hash into a hash
with string keys, not symbol keys.

Fred