यह मेरे पास है:मैं rspec का उपयोग कर फ़ाइल के अस्तित्व को नकली/नकली कैसे बना सकता हूं?
it "should be able to get a valid directory path" do
@asset.some_file_path.should == "/something/test.jpg"
end
समस्या यह है कि अगर कोई मौजूदा फ़ाइल नहीं है तो कुछ_file_path "/not_here_yet.jpg" लौटाता है।
def some_file_path
if File.exists(self.my_image_path)
return my_image_path
else
return "/not_here_yet.jpg
end
end
मैं वास्तव में अपने परीक्षणों में एक नई फाइल नहीं बनाना चाहता हूं। क्या फाइल के अस्तित्व को नकली बनाने का कोई तरीका है?
मैं कुछ पंक्तियों में कुछ सोच रहा हूं:
it "should be able to get a valid directory path" do
AwesomeFakeFileCreator.create(@asset.my_image_path)
@asset.some_file_path.should == "/something/test.jpg"
end
क्या यह संभव है? मैं ऐसी चीज कैसे कर सकता हूं?
संपादित करें: मैंने FakeFS पर थोड़ा सा देखा लेकिन मुझे यकीन नहीं है कि यह मेरे प्रश्न का उत्तर
क्या आप यह बता सकते हैं कि यह क्या कर रहा है? – marcgg
पहली पंक्ति यह बता रही है कि फ़ाइल मौजूद है और दूसरी पंक्ति संपत्ति वस्तु पर my_image_path विधि को दबा रही है और फ़ाइल पथ लौटाती है, जो कि आपकी कुछ_फाइल_पैथ विधि उस मामले में वापस आ जाएगी, यानी पूरे spec उदाहरण के बारे में है। संक्षेप में, यदि यह मौजूद है तो पथ वापस कर दें। – nas
नहीं कि आपको मुझे खुश या कुछ भी रखना है - मैंने सवाल नहीं पूछा - लेकिन मुझे डर है कि मुझे यह समझ में नहीं आया। – Shadowfirebird