के बिना stdout को लिखता है, जब मैं prove
उपयोगिता का उपयोग करके एक पेर्ल परीक्षण चलाता हूं, तो यह विफल रहता है कि परीक्षण के तहत विधि में print
कथन शामिल हैं जो न्यूलाइन द्वारा समाप्त नहीं किए जाते हैं।टेस्ट साबित होता है कि यह बिना किसी न्यूलाइन
use Test::More tests=>1;
ok(foo(), "calling foo");
sub foo{
print "A";
1;
}
यह
Bad plan. You planned 1 tests but ran 0.
में परिणाम अगर मैं एक नई पंक्ति संलग्न: print "A\n";
परीक्षण गुजरता है।
(ध्यान दें कि अगर मैं prove
का उपयोग करने के बजाय परीक्षण perl mytest.t
निष्पादित करता हूं तो यह किसी भी तरह से गुजरता है)।
कोई विचार यह क्यों हो सकता है, और इसके आसपास कैसे काम करना है?
देखें http://stackoverflow.com/q/1538260/1030675 'प्रिंट' का आउटपुट 'साबित' अपेक्षाओं में हस्तक्षेप करता है। – choroba