2010-01-25 12 views
5

मेरे आवेदन में, एमवीपी पैटर्न का उपयोग करके, प्रस्तुतकर्ता कुछ गुणों को देखने पर सेट कर रहा है। उदाहरण के लिए, Iview में स्ट्रिंग ग्राहक {set;} है। अब, मैं यह जांचना चाहता हूं कि यह संपत्ति कुछ के साथ सेट की गई थी मूल्य "एक्स"। क्या मैं राइनो मोक्स के साथ परीक्षण कर सकता हूं?एक लिखित संपत्ति का परीक्षण कैसे करें

उत्तर

4

केवल-लिखने वाले गुणों को परिभाषित न करें। .NET design guidelines कहें:

सेट-केवल गुण प्रदान न करें।

यदि संपत्ति प्राप्तकर्ता प्रदान नहीं किया जा सकता है, तो कार्यक्षमता को लागू करने के लिए एक विधि का उपयोग करें। विधि का नाम सेट के साथ शुरू होना चाहिए जिसके बाद संपत्ति का नाम क्या होगा। उदाहरण के लिए, ऐपडोमेन में कैशपैथ नामक एक सेट-केवल संपत्ति रखने के बजाय SetCachePath नामक एक विधि है।

ज्यादातर मामलों में, पढ़ने/लिखने की संपत्ति को परिभाषित करना बहुत आसान होता है, और यह यूनिट टेस्टी को स्वामित्व वाले प्रकार के लिए हवा बनाता है। इसके लिए आपको राइनो मोक्स की आवश्यकता नहीं होगी, क्योंकि आप सीधे संपत्ति से मूल्य पढ़ सकते हैं।

हालांकि, यदि आप डिज़ाइन दिशानिर्देशों में वर्णित एक उत्परिवर्तन विधि चाहते हैं, तो आपको इसे virtual बनाना चाहिए ताकि यह सत्यापित किया जा सके कि इसे सही ढंग से बुलाया गया है। यद्यपि यह निश्चित रूप से संभव है, यह स्थापित करने के लिए और अधिक जटिल है, इसलिए यदि ऐसा करने के लिए अनिवार्य कारण थे तो मैं केवल उस मार्ग को ले जाऊंगा।

+0

एस्वर के लिए धन्यवाद। –

संबंधित मुद्दे