I'm having troubles to test methods on controllers, specially this method: def update @property = @user.properties.find(params[:id])
if params[:property][:owner_id].blank? @owner = Owner.create_from_user(@user) @property.owner = @owner end if @property.update_attributes(params[:property]) flash[:notice] = 'Imóvel atualizado com sucesso.' redirect_to user_property_path(@user) else render :action => "edit" end end This method is pretty standard, except for the line ==> if params[:property][:owner_id].blank? In my spec file I try this: it "should expose the requested property as @property" do @property = mock_model(Property, :owner=>:owner, :owner= =>:owner, :update_attributes => true) Property.stub!(:find).and_return(@property) Owner.stub!(:create_from_user) put :update, :id => "1" assigns(:property).should equal(@property) end But get this error: The error occurred while evaluating nil.[] The problem is params and I don't know how is the best way to simulete params hash ... Anyone can help? Thanks. Daniel Lopes Area Criações Design, Websites e Sistemas Web Visite: http://www.areacriacoes.com.br/projects http://blog.areacriacoes.com.br/ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 55 (31) 3077-4560 / 55 (31) 8808-8748 / 55 (31) 8737-7501
_______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users