मुझे निम्नलिखित प्रश्न मिला है।
class A {सार्वजनिक फ़ंक्शन new () { वापसी ($ this- & gt; आईडी == 0); }}} वर्ग बी का विस्तार A {// कुछ फ़ंक्शन}
अब मैं कक्षा बी का मजाक करना चाहता हूं। इसलिए मुझे कुछ बयानों मिल गई हैं
$ oMockedStm = $ इस- & gt; getMockBuilder ( 'बी') - & gt; getMock (); $ OMockedStm- & gt; उम्मीद है ($ इस- & gt; किसी भी ()) - & gt; विधि ( 'someMethod') - & gt; होगा ($ इस- & gt; returnValue (TRUE)); $ OMockedStm- & gt; उम्मीद है ($ इस- & gt; किसी भी ()) - & gt; विधि ( 'anotherMethod') - & gt; होगा ($ इस- & gt; returnValue (TRUE));
अब जब मैं
$ this- & gt; assertTrue ($ oMockedStm- & gt; हैनई ());
मुझे त्रुटि मिलती है: असफल कहने पर असफल कहें।
यह कैसे हो सकता है फ़ंक्शन हमेशा झूठे की वास्तविकता देता है।
क्या इस तथ्य के साथ ऐसा कुछ है कि आप मच गई वस्तुओं की मूल पद्धति को नहीं बुला सकते?
मुझे पता चला कि मैं पूरी कक्षा का नकली नहीं करना चाहता था। केवल विशिष्ट फ़ंक्शन तो आप अपने नकली वस्तु को परिभाषित करते समय क्या करते हैं, तो आप विशिष्ट कार्यों को निर्दिष्ट करने के लिए setMethods ()
फ़ंक्शन का उपयोग करते हैं।
इस तरह से:
< पूर्व> $ oMockedStm = $ this- & gt; getMockBuilder ('बी') - & gt; setMethods (सरणी ('कुछ विधि', 'एक और विधि')) - & gt; getMock ();
Comments
Post a Comment