On Fri, May 22, 2009 at 7:29 AM, Diwakar, ANGLER - EIT <[email protected]> wrote: > > Still I am getting the same error > > describe UsersController do > > describe :create do > before(:each) do > controller.stub!(:require_user).and_return(@user) > controller.stub!(:uses_mailer).and_return(@user) > User.stub!(:new).and_return(@user) > post :create,{:terms_and_conditions => "1",:promotional_mailings => > "0",:email_address => "[email protected]"},:user => {} > end > it "should create a new user object" do > User.should_receive(:new).with({"terms_and_conditions" => > "1","promotional_mailings" => "0","email_address" => > "[email protected]"}).and_return(@user) > post :create,{:terms_and_conditions => "1",:promotional_mailings => > "0",:email_address => "[email protected]"},:user => {} > end > end > end > > Error > > Spec::Mocks::MockExpectationError in 'UsersController create should create a > new > user object' > <User(id: integer, created_on: datetime, updated_on: datetime, destroyed_on: > dat > etime, accessed_on: datetime, email_address: string, name_first: string, > name_la > st: string, mailing_address_id: integer, billing_address_id: integer, > name_displ > ay: string, picture_id: integer, url: string, country: string, freelance: > boolea > n, statement: string, hostname_active: boolean, hostname: string, > promotional_ma > ilings: boolean, sales_commission_rate: float, referral_commission_rate: > float, > employee_lock: boolean) (class)> expected :new with > ({"terms_and_conditions"=>"1 > ", "promotional_mailings"=>"0", "email_address"=>"[email protected]"}) once, but > rec > eived it 0 times
Please show us the controller code. > > > -----Original Message----- > From: [email protected] > [mailto:[email protected]] On Behalf Of David Chelimsky > Sent: Friday, May 22, 2009 4:19 PM > To: rspec-users > Subject: Re: [rspec-users] passing param values > > On Fri, May 22, 2009 at 4:34 AM, Diwakar, ANGLER - EIT > <[email protected]> wrote: >> My controller spec is like below >> >> describe UsersController do >> >> describe " create action" do >> before(:each) do >> @user = mock_model(User,:user => "value") > > #don't need to set the user in this > @user = mock_model(User) > >> controller.stub!(:require_user).and_return(@user) >> controller.stub!(:uses_mailer).and_return(@user) >> User.stub!(:new).and_return(@user) >> end >> it "should create a new user object" do >> User.should_receive(:new).with(:user=>"value").and_return(@user) > > #use 'user' instead of :user because Rails converts the keys > User.should_receive(:new).with('user' => 'value').and_return(@user) > >> post :create,:user => "value" >> end >> end >> end >> >> Error: >> >> <User(id: integer, created_on: datetime, updated_on: datetime, destroyed_on: >> dat >> etime, accessed_on: datetime, email_address: string, name_first: >> string, name_la >> st: string, mailing_address_id: integer, billing_address_id: integer, >> name_displ >> ay: string, picture_id: integer, url: string, country: string, freelance: >> boolea >> n, statement: string, hostname_active: boolean, hostname: string, >> promotional_ma >> ilings: boolean, sales_commission_rate: float, referral_commission_rate: >> float, >> employee_lock: boolean) (class)> expected :new with ({:user=>"value"}) >> once, but >> received it 0 times >> >> How should I pass the params? >> >> >> Diwa >> >> _______________________________________________ >> rspec-users mailing list >> [email protected] >> http://rubyforge.org/mailman/listinfo/rspec-users >> > _______________________________________________ > rspec-users mailing list > [email protected] > http://rubyforge.org/mailman/listinfo/rspec-users > _______________________________________________ > rspec-users mailing list > [email protected] > http://rubyforge.org/mailman/listinfo/rspec-users > _______________________________________________ rspec-users mailing list [email protected] http://rubyforge.org/mailman/listinfo/rspec-users
