परीक्षण से स्वतंत्र रूप से कंसोल से प्रोग्राम चलाएं - रूबी

मेरा एक प्रोग्राम है जो कंसोल में चलने वाला है। नामक फाइल में my_program.rb मेरे पास है:

class MyProgram
end
MyProgram.new.start

मेरा भी एक अलग है my_program_test.rb और हर बार मैं उन परीक्षणों को चलाना चाहता हूं जिनकी मुझे टिप्पणी करने की आवश्यकता है MyProgram.new.start कंसोल में प्रोग्राम को चलाने से बचने के लिए।

क्या इसके आसपास कोई रास्ता है?

उत्तर:

उत्तर № 1 के लिए 1

मैं कोई माणिक विशेषज्ञ नहीं हूं, लेकिन मेरा मानना ​​है कि आप कुछ का उपयोग कर सकते हैं इस:

if __FILE__ == $0
MyProgram.new.start
end

जवाब के लिए 0 № 2

RSpec के साथ आप स्टब कर सकते हैं start परीक्षण से पहले विधि जो इसे ट्रिगर करेगी। कुछ इस तरह:

before do
allow_any_instance_of(MyProgram).to receive(:start).and_return(true)
end

संबंधित सवाल
सबसे लोकप्रिय