Moles माइक्रोसॉफ्ट द्वारा निर्मित एक अलगाव फ्रेमवर्क है। मोल्स की एक अच्छी सुविधा यह है कि यह स्थैतिक/गैर-वर्चुअल विधियों और मुहरबंद वर्गों ("मोक जैसे ढांचे के साथ संभव नहीं है)" नकल कर सकता है। नीचे मोल्स क्या कर सकते हैं की त्वरित प्रदर्शन है:कैसे मोल्स अलगाव ढांचे को लागू किया जाता है?
Assert.AreNotEqual(new DateTime(2012, 1, 1), DateTime.Now);
// MDateTime is part of Moles; the below will "override" DateTime.Now's behavior
MDateTime.NowGet =() => new DateTime(2012, 1, 1);
Assert.AreEqual(new DateTime(2012, 1, 1), DateTime.Now);
लगता मोल्स की तरह रनटाइम पर DateTime.Now
तरह बातें की कोल इंडिया शरीर को संशोधित करने में सक्षम है। चूंकि मोल्स ओपन-सोर्स नहीं है, इसलिए मुझे यह जानकर उत्सुकता है कि रनटाइम पर विधियों के सीआईएल को संशोधित करने के लिए कौन सी तंत्र मोल्स का उपयोग करता है। क्या कोई किसी तरह की रोशनी दिखा सकता है?
मैं आपको पेपे और मोल्स के काम के बारे में बताते हुए @ पेली के इन 3 वीडियो को देखने की अत्यधिक अनुशंसा करता हूं। वें बहुत अच्छे हैं! [वीडियो भाग 1] (http://channel9.msdn.com/Blogs/channel9spain/Microsoft-PEXMOLES-- उन्नत- Unit-Testing-aspect-13 "माइक्रोसॉफ्ट पेक्स/MOLES और उन्नत यूनिट-परीक्षण पहलू 1/3") ; [वीडियो भाग 2] (http://channel9.msdn.com/Blogs/channel9spain/Microsoft-PEXMOLES-- उन्नत- Unit-Testing-aspects-23 "माइक्रोसॉफ्ट PEX/MOLES और उन्नत यूनिट-परीक्षण पहलुओं 2/3") ; [वीडियो भाग 3] (http://channel9.msdn.com/Blogs/channel9spain/Microsoft-PEXMOLES-- उन्नत- Unit-Testing-aspects-33 "माइक्रोसॉफ्ट पेक्स/MOLES 3/3") –