मैं एक कस्टम दावा कैसे लिख सकता हूं, जैसे assertFoo($expected, $actual)
, जो त्रुटि "स्टैक ट्रेस" के संबंध में अंतर्निहित दावों की तरह व्यवहार करता है?कस्टम PHPUnit दावा कैसे लिखना है जो अंतर्निहित दावे की तरह व्यवहार करता है?
मैं वर्तमान में निम्न विधि परिभाषित (एक वर्ग है कि PHPUnit_Framework_TestCase
फैली अंदर), है
public static function assertFoo($expected, $actual) {
self::assertEquals($expected, $actual);
}
अगर मैं एक परीक्षण से इस फोन और परीक्षण विफल रहता है, मैं कॉल स्टैक में दो आइटम प्राप्त:
1) PreferencesTest::testSignupTeacher
Failed asserting that 5 matches expected 3.
/vagrant/myproject/tests/integration/PreferencesTest.php:17
/vagrant/myproject/tests/integration/PreferencesTest.php:136
लाइन 17 वह जगह है जहां assertFoo()
अंतर्निहित assertEquals()
कॉल करता है और विफल रहता है; लाइन 136 है assertFoo()
कहा जाता है।
मैं परीक्षण assertEquals()
सीधे कॉल करने के लिए बदलते हैं, तो मैं केवल एक मिल:
1) PreferencesTest::testSignupTeacher
Failed asserting that 3 is true.
/vagrant/myproject/tests/integration/PreferencesTest.php:136
कुछ documentation in the manual नहीं है, लेकिन यह इस कवर करने के लिए प्रतीत नहीं होता।
क्या आप अपने assertFoo() फ़ंक्शन के लिए कोड दिखा सकते हैं। –
@ डेरेनकूक निश्चित, अपडेट किया गया। – mjs