कोटलिन एक्सटेंशन फ़ंक्शन बहुत अच्छा है। लेकिन मैं उन पर यूनिट परीक्षण कैसे कर सकता हूं? खासकर एंड्रॉइड एसडीके की जो कक्षाएं कक्षा प्रदान करती हैं (जैसे संदर्भ, संवाद)।एंड्रॉइड एसडीके कक्षाओं पर कोटलिन एक्सटेंशन फ़ंक्शन पर यूनिट परीक्षण
मैं नीचे दो उदाहरण प्रदान करता हूं, और यदि कोई साझा कर सकता है कि मैं उन्हें कैसे परीक्षण कर सकता हूं, या अगर मुझे वास्तव में उन्हें यूनिट परीक्षण करना है तो मुझे उन्हें अलग-अलग लिखना होगा।
fun Context.getColorById(colorId: Int): Int {
if (Build.VERSION.SDK_INT >= 23)
return ContextCompat.getColor(this, colorId)
else return resources.getColor(colorId)
}
और
fun Dialog.setupErrorDialog(body : String, onOkFunc:() -> Unit = {}): Dialog {
window.requestFeature(Window.FEATURE_NO_TITLE)
this.setContentView(R.layout.dialog_error_layout)
(findViewById(R.id.txt_body) as TextView).text = body
(findViewById(R.id.txt_header) as TextView).text = context.getString(R.string.dialog_title_error)
(findViewById(R.id.txt_okay)).setOnClickListener{
onOkFunc()
dismiss()
}
return this
}
कोई भी सुझाव में मदद मिलेगी। धन्यवाद!
हाय, मुझे नहीं लगता कि आपको इन कार्यों को यूनिट-टेस्ट करने की आवश्यकता है। सबसे पहले, एंड्रॉइड संसाधनों से रंग मिलता है और यह आपके आवेदन कोड पर निर्भर नहीं करता है। दूसरा त्रुटि त्रुटि दिखाता है, आप एस्प्रेसो या रोबोटियम या अन्य यूआई परीक्षण ढांचे का उपयोग क्यों नहीं करते हैं यह जांचने के लिए कि क्या यह ठीक से प्रदर्शित होता है? – piotrek1543
धन्यवाद piotrek। कोड सिर्फ उदाहरण के लिए है। प्रश्न का मुख्य सारांश यह पता लगाने के लिए है कि एक्सटेंशन फ़ंक्शन पर इकाई परीक्षण कैसे किया जा सकता है, यदि उसमें कुछ तर्क है तो परीक्षण करने की आवश्यकता है। क्या यह कुछ हासिल करने योग्य है, या मुझे कुछ याद आती है? धन्यवाद। – Elye
मैं इसे भी ढूंढ रहा हूं। क्या आपने इसे @ एली पाया है? – elsennov