2013-05-08 4 views
5

मैं अपने परीक्षण में सफेद अंतरिक्ष चरित्र को पारित करने का प्रयास करता हूं।ककड़ी की मेज से सफेद जगह या शून्य वस्तु कैसे प्राप्त करें?

तो मैं अपने ककड़ी चरण में निम्न प्रयास

If I enter: 
|company_name|phone| 
||#{nil}| 

मैं {"company_name"=>"", "phone"=>"\#{nil}"}

|company_name|phone| 
| | | 

मैं {"company_name"=>"", "phone"=>""}

|company_name|phone| 
|\s|\nil| 

मैं मिल पाने {"company_name"=>"\\s", "phone"=>"\nil"}

|company_name|phone| 
|" "|' '| 

मैं {"company_name"=>"\" \"", "phone"=>"' '"}

क्या मैं तालिका में डाल निम्नलिखित हैश {"company_name"=>" ", "phone"=>" "} पाने के लिए करना चाहिए?

+0

हमें वह कोड दें जिसका आप उपयोग कर रहे हैं। –

+0

कोई कोड यहां जरूरी नहीं है। मुझे बस इस तरह की स्ट्रिंग => "" या शून्य ऑब्जेक्ट –

उत्तर

2

कोई कीमत नहीं है जिसे आप ककड़ी तालिका में डाल सकते हैं जिसे डिफ़ॉल्ट रूप से nil के रूप में व्याख्या किया जाता है। आप जो चाहते हैं उसे करने के लिए आप cucumber Transform का उपयोग कर सकते हैं। अपने समर्थन फ़ोल्डर में

Transform /^table:company_name,phone$/ do |table| 
    table.hashes.map! do |h| 
    h.each_pair do |k,v| 
     h[k] = nil if v == '' #here, you can map any value you want to be nil 
    end 
    end 

    table 
end 

एक फ़ाइल में रखा इस: उदाहरण के लिए, अगर आप इस तरह इसका इस्तेमाल कर सकते अगर आप nil के रूप में एक खाली स्ट्रिंग व्याख्या करने के लिए करना चाहता था। map_column! आदि जैसी अन्य विधियां भी हैं जिनका उपयोग आप केवल एक कॉलम को बदलना चाहते हैं।

+0

पास करने की आवश्यकता है ठीक है! अब यह स्पष्ट है कि शून्य ऑब्जेक्ट को कैसे पास किया जाए। लेकिन, उदाहरण के लिए, "company_address" में मुझे '' '" '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' ' मैं उसको कैसे करू? –

+0

@mef_ आप उन लोगों के लिए 'map_column!' का उपयोग कर केवल कुछ चाबियाँ बदल सकते हैं जिन्हें आप बदलना चाहते हैं या ऊपर दिए गए कोड पर कुंजी के बारे में दूसरी शर्त जोड़कर। (उदाहरण के लिए, कुछ ऐसा: 'एच [के] = शून्य अगर वी ==' 'और% डब्ल्यू (company_name फोन)। शामिल है? (के)' केवल कंपनी के नाम को मानचित्र करने के लिए और खाली होने पर फोन को शून्य करने के लिए। यदि आप अन्य मानों को 'शून्य' पर मैप करना चाहते हैं, इसी प्रकार अभिव्यक्ति में अन्य स्थितियां भी जोड़ें। –

+0

धन्यवाद! ट्रांसफॉर्म विधि मेरी मदद करती है। मैं जहां मैं '' '" '' '' '' '' '' '' '' '' '' 'एच [के] =" "अगर वी == 'एस'' ' इस प्रकार मेरी तालिका में मैं' '' ''' '' स्ट्रिंग पास करता हूं –

संबंधित मुद्दे