2010-04-15 3 views
7

क्या स्थानीय विधि में पारित पैरामीटर का मान प्राप्त करने के लिए आरएसपीसी विधि के लिए यह संभव है? उदाहरण के लिए, अगर मैं चाहता हूँ:rspec "it" स्ट्रिंग

describe Me do 
    it "should figure this out" 
    puts "I " + SPEC_NAME 
    end 
end 

इस मुद्रित करने के लिए:

I should figure this out 

... क्या मैं कोड नमूने में SPEC_NAME के ​​लिए डाल दिया होगा?

इससे भी बेहतर, मेरे जैसे अपेक्षाकृत नए रूबोलॉजिस्ट अपने आप को कैसे समझेंगे?

उत्तर

7

description विधि जो आप चाहते हैं उसे करना चाहिए। जैसे

describe Me do 
    it "should figure this out" do 
    puts "I " + description # or "I #{description}" using string interpolation 
    end 
end 

यह कैसे पता लगाने के लिए के संदर्भ में, मैं इसे RDocs for RSpec में की तलाश में, देखने के लिए यह कैसे काम करता it विधि के स्रोत को देखकर शुरू करने से मिल गया। फिर आप पाएंगे कि आरएसपीसी "इसे" स्ट्रिंग को "विवरण" के रूप में संदर्भित करता है ताकि आप उन उपलब्ध विधियों को देख सकें जिनमें उनके नाम में विवरण शामिल है।

मुझे पता है कि यह अभी आपके लिए बहुत अधिक उपयोग नहीं है, लेकिन जैसा कि आप अधिक रूबी सीखते हैं, आपको आरएसपीईसी जैसे पुस्तकालयों में कोड को पढ़ने में आसान लगेगा और यह एक वृत्ति विकसित करेगा कि उन्हें कैसे लागू किया जा सकता है, चीजों के लिए सही जगहों को देखने में आपकी मदद करेगा।

+0

यह सही है, धन्यवाद! – lambinator

+1

मैंने आरएसपीसी 2.8.0 के साथ कोशिश की, लेकिन यह सीधे काम नहीं कर सका। यह किस वस्तु पर चल रहा था? मैंने पाया: आरएसपीईसी :: उदाहरण समूह :: नेस्टेड_2 (मुझे लगता है कि यह आपके लिए उदाहरण समूह है) मेरे लिए समाधान है: example.description – inger

+0

+1 स्रोत/दस्तावेज़ों से इस तरह की चीज़ों को कैसे समझें इस पर निर्देशों के लिए निर्देश शामिल हैं। – ErJab

0

यही आपके प्रश्न का उत्तर नहीं है, लेकिन यदि आप प्रत्येक परीक्षा बाहर मुद्रित करने के लिए के रूप में यह चलाता है की कोशिश कर रहे हैं, अपने spec.opts फ़ाइल में इस डाल:
--format specdoc

यहाँ क्या मेरी परीक्षण देखने का एक उदाहरण है की तरह जब मैं उन्हें चलाएँ:

A new release when parsing the artist containing a full join word 
- should remove it 
- should not remove it when it is inter-word 

A new release when parsing the artist containing an abbreviated joining word 
- should remove it when there is a period after it 
- should remove it when when there is not a period after it 
- should not remove it when it is inter-word with a period after it 
- should not remove it when it is inter-word without a period after it 

A new release when parsing the artist 
- should be invalid if the year is not current 
- should be valid if it is the current year 
+0

काफी कुछ नहीं जो मैं खोज रहा था, लेकिन फिर भी महान टिप! – lambinator

1
RSpec के नवीनतम संस्करण (मैं 2.14 उपयोग कर रहा हूँ) के साथ

, आप example.description के रूप में यह देख सकते हैं।

it "prints itself" do 
    puts "My description string is '#{example.description}'." 
end