बेतरतीब ढंग से एक संदर्भ
उत्पन्न बस एक उपयुक्त यादृच्छिक monadic संदर्भ उत्पन्न करते हैं। आप परीक्षण चल रहे हैं, तो आप, शुद्ध काल्पनिक इकाई देश में नहीं रह सकते कि आप वास्तव में परीक्षण करने के लिए एक विशेष इकाई लेने के लिए किया है। क्या आपने एक सूची मोनड चुना था? यादृच्छिक रूप से संदर्भ के रूप में एक सूची उत्पन्न करते हैं। एक राज्य मोनड? यादृच्छिक रूप से संदर्भ के लिए राज्य प्रकार का एक मूल्य उत्पन्न करते हैं। लेखक? यादृच्छिक रूप से एक लॉग उत्पन्न करें।
बेतरतीब ढंग से, एक कार्रवाई
तो क्या करते हैं आप उत्पन्न करना चाहते उत्पन्न वास्तव में? यदि यह एक monadic कार्रवाई है, तो आप अपने विशेष इकाई, अपनी अनूठी पुरातन के आधार पर के लिए monadic कार्यों पैदा करने का एक तरीका प्रदान करने के लिए की जरूरत है। जैसे अनियमित रूप से उत्पन्न राज्य कार्यों राज्य पुरातन get
और put
से बेतरतीब ढंग से निर्माण किया जाना चाहिए।
उन्हें एक साथ रखो
आप QuickCheck की क्षमताओं का उपयोग करते हैं एक समारोह f
कि एक monadic कार्रवाई पैदा करता है उत्पन्न करने के लिए, और QuickCheck का प्रयोग कर एक संदर्भ c
उत्पन्न करने के लिए है, तो आप बस c >>= f
उन्हें एक साथ डाल करने के लिए कर सकते हैं। या आप सीधे कार्रवाई a
उत्पन्न कर सकते हैं, और c >> a
करें।
स्रोत
2012-03-26 03:38:12