मैं कैसे जांच सकता हूं कि एक विधि हैश को लौटाती है जिसमें विशिष्ट कुंजी होती है और उन चाबियों के मान RSpec का उपयोग करके शून्य नहीं होते हैं?परीक्षण है कि हैश में विशिष्ट कुंजी हैं और उन कुंजियों के लिए मान शून्य नहीं हैं
9
A
उत्तर
8
कुछ इस तरह:
test_method.values_at("key1", "key2").should_not include(nil)
9
मैं लिखने चाहते हैं:
describe MyObject do
describe "#my_method" do
subject(:my_method) { MyObject.new.my_method }
it { is_expected.to be_a_kind_of(Hash) }
specify { expect(my_method.keys).to include(:key1, :key2) }
specify { expect(my_method.values).not_to include(nil) }
end
end
यह हो सकता है आप "कुंजी 1" औंधा अल्पविराम के में, "कुंजी 2" कुंजी का उपयोग करना होगा। अन्यथा यह त्रुटि फेंक सकता है।
यदि हैश का मान वास्तव में 'शून्य 'है तो यह काम नहीं करेगा। 'हैश.की.शोल्ड = ~ [: की 1,: की 2] 'चाल चलनी चाहिए। –