RESPEC REDIRECT_TO طرق فشل التوقعات (أو الكتلة البحرية؟)، كيف تأتي؟

StackOverflow https://stackoverflow.com/questions/954708

سؤال

يبدو أن طريق RSPEC الخاص بي ل: تحكم => 'الهواتف'، ولكن عندما أقوم بإنشاء التوقعات REDIRECT_TO، فشل التوقع.

إليك اختبار الطرق لعنوان URL:

    it "maps #edit" do
      route_for(:controller => "phones", :action => "edit", :id => "1").should == "/phones/1/edit"
    end #THIS TEST PASSES

إليك التوقعات التي تفشل:

    put :update, :id => "1", :phone => {}
    response.should redirect_to :controller => 'phones', :action => 'edit'

وهذه هي الرسالة التي أحصل عليها في الاختبارات:

expected redirect to {:controller=>"phones", :action=>"edit"},
got redirect to "http://test.host/phones/1089/edit" # BUT THIS THE URL I WAS EXPECTING!

ما هي schiznits؟

هل كانت مفيدة؟

المحلول

والسبب في فشل ذلك هو أنك تفتقد الهوية في توقعاتك. يجب أن يكون:

response.should redirect_to :controller => 'phones', :action => 'edit', :id=>1
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top