क्या किसी दिए गए ऑब्जेक्ट को मॉकिटो मॉक है या नहीं, तो कोड में बताना संभव है?मैं कैसे बता सकता हूं कि कोई ऑब्जेक्ट मॉकिटो मॉक है या नहीं?
कारण यह है कि मैं ऐसा करना चाहता हूं कि एक नकली इसका उपयोग होने पर एक अलग त्रुटि संदेश लौटाएं। इसका उपयोग अन्य डेवलपर्स को सुझाव देने के लिए किया जाएगा कि उन्हें पूर्व-तैयार मॉक का उपयोग करना चाहिए जो पहले से ही नकली बनाने के बजाय उपयोगी तरीके से कॉल का जवाब देने के लिए सेट है।
फिलहाल मेरे पास सबसे अच्छा object.getClass().getName().contains("EnhancerByMockitoWithCGLIB")
है लेकिन यह हैकी लगता है।
आपके उत्तर के बाद मैंने [स्रोत के लिए स्रोत] [https://fisheye2.atlassian.com/browse/mockito/trunk/src/org/mockito/internal/util/MockUtil.java पर एक नज़र डाली? आर = 2020) और सीधे निजी 'isMockitoMock' विधि के तहत एक सार्वजनिक 'isMock' विधि है जिसका उपयोग लगता है। मैं मॉकिटो मेलिंग सूची पर पोस्ट करूंगा ताकि यह जांच सके कि 'org.mockito.internal.util' से खुद को कॉल करने का एक अच्छा विचार है या नहीं। – mikej
'org.mockito.internal.util' पैकेज के इरादे में से एक यह है कि मॉकिटो टीम एक नए संस्करण में इस पैकेज में कुछ भी बदल सकती है। तो यदि आप इस पैकेज का उपयोग करते हैं, तो आपके परीक्षण भविष्य में संभावित रूप से तोड़ सकते हैं। हालांकि, यह बेहद असंभव है कि हम इस विशेष विधि से छुटकारा पायेंगे, इसलिए मैं कहूंगा कि यह उपयोग करने के लिए काफी सुरक्षित है। –
@ माइकज: +1, किसी भी तरह से मैंने उसे याद किया, धन्यवाद! मैंने पुराना जवाब हटा दिया और इसके बजाय अपना सुझाव दिया ताकि यह बेहतर खड़ा हो। आशा है कि आपको बुरा लगेगा। –