मैं रेलों और बीडीडी वर्कफ़्लो की मेरी समझ को मजबूत करने की कोशिश कर रहा हूं, इसलिए मैं उन मिनी ब्लॉगों में से एक बनाकर छोटा शुरू करना चाहता था, लेकिन आरएसपीईसी के साथ। अभी मेरे पास एक लेख नियंत्रक और आलेख मॉडल है, और संबंधित rspec फ़ाइलें हैं। अनुच्छेद बहुत सरल है, केवल शीर्षक है: स्ट्रिंग और सामग्री: टेक्स्ट, और आलेख नियंत्रक रीस्टफुल है - हालांकि मैंने लेख के लिए एमसीवी लिखा है, यह मूल रूप से वैसे ही है जैसे मैंने इसे बनाने के लिए एक मचान का उपयोग किया था।एक साधारण PUT अद्यतन के लिए आरएसपीसी परीक्षण कैसे लिखें?
हालांकि मुझे वास्तव में पता नहीं है कि मैं PUT अद्यतन के लिए rspec में एक परीक्षण लिखने के दौरान क्या कर रहा हूं। मैं लेख वस्तु बनाने के लिए फैक्टरी लड़की का उपयोग कर रहा है, और अब तक मेरे कोड की तरह दिखता है:
#factories.rb
FactoryGirl.define do
factory :article do
title "a title"
content "hello world"
end
#articles_controller_spec.rb
before(:each) do
@article = Factory(:article)
end
describe "PUT 'update/:id'" do
it "allows an article to be updated" do
@attr = { :title => "new title", :content => "new content" }
put :update, :id => @article.id, :article => @attr
response.should be_successful
end
end
हालांकि मैं बार आ रही है:
Failures:
1) ArticlesController PUT 'update/:id' allows an article to be updated
Failure/Error: response.should be_successful
expected successful? to return true, got false
क्या मैं गलत कर रहा हूँ? और क्या मैं सही उपकरण का उपयोग कर रहा हूं? जब मैं अपना टेस्ट सर्वर चलाता हूं, नया, संपादित करता हूं, सभी कामों को नष्ट कर देता हूं क्योंकि मैं उन्हें उम्मीद करता हूं, इसलिए मुझे लगता है कि यह आरएसपीईसी की मेरी समझ के साथ एक समस्या है। अगर मैं गलत हूं तो मुझे बताएं - धन्यवाद!
क्या आपके नियंत्रक और मॉडल की तरह दिखता है? –