On Apr 8, 2009, at 11:09 AM, Andrea Jahn wrote:


Hi,

I added one line in my controller to extend the params hash. But now I get errors
in my controller spec.

Controller

  def update
    @pl_planning = PlPlanning.find(params[:id])

# the item model version (select box) depends on other select boxes and can be empty # then it is not in the params hash and the attribute would not be updated and validated
--> params[:pl_planning]["item_model_version_id"] ||= ""

    # update planning attributes
    @pl_planning.attributes = params[:pl_planning]
    ...


Controller Spec error:

You have a nil object when you didn't expect it!
You might have expected an i nstance of ActiveRecord::Base.
The error occurred while evaluating nil.[]


What do I have to add in my spec for that ?

I tried:

    params = {"pl_planning" => {}}
    controller.stub!(:params).and_return(params)

But then I get the following error:

undefined method `scope=' for #<Searchlogic::Cache::PlPlanningSearch: 0x6aa14cc>


Usually you are will fare better if you pass the params directly in:

get :foo, :param1 => "something"

Why are you stubbing params?

Scott


Thanks in advance
Andrea





Verschicken Sie SMS direkt vom Postfach aus - in alle deutschen und viele
ausländische Netze zum gleichen Preis!
https://produkte.web.de/webde_sms/sms


_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users

_______________________________________________
rspec-users mailing list
rspec-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/rspec-users

Reply via email to