मैं सी # (fibonacci heap का उपयोग कर प्राथमिकता कतार) में डेटा संरचना लिख रहा हूं और मैं इसे टीडीडी के लिए सीखने के अनुभव के रूप में उपयोग करने की कोशिश कर रहा हूं, जिसे मैं काफी नया हूं।इकाई डेटा संरचना का परीक्षण
मैं समझता हूं कि प्रत्येक परीक्षण को कक्षा के एक टुकड़े का परीक्षण करना चाहिए ताकि एक इकाई में विफलता मुझे कई परीक्षण विफलताओं से भ्रमित न करे, लेकिन मुझे यकीन नहीं है कि डेटा की स्थिति कब होती है एक परीक्षण के लिए संरचना महत्वपूर्ण है।
उदाहरण के लिए,
private PriorityQueue<int> queue;
[SetUp]
public void Initialize()
{
this.queue = new PriorityQueue<int>();
}
[Test]
public void PeekShouldReturnMinimumItem()
{
this.queue.Enqueue(2);
this.queue.Enqueue(1);
Assert.That(this.queue.Peek(), Is.EqualTo(1));
}
यदि या तो कतारबद्ध या पीक तोड़ दिया इस परीक्षा टूट जाएगा।
मैं सोच रहा था कि मैं किसी भी तरह से टेस्ट मैन्युअल रूप से अंतर्निहित डेटा संरचना के ढेर को स्थापित कर सकता हूं, लेकिन मुझे यकीन नहीं है कि दुनिया को कार्यान्वयन के बिना इसे कैसे किया जाए।
क्या ऐसा करने का कोई बेहतर तरीका है? अन्य भागों पर निर्भर है ठीक है?
संपादित करें: मेरे पास एक सेटअप है, बस सादगी के लिए इसे छोड़ दिया है।
अधिक विशिष्ट होने के लिए अपवोट - और मेरा नाम सही वर्तनी ;-) –
तो मैं इस निजी एक्सेसर का उपयोग कैसे करूं? प्रतिबिंब? या InternalsVisible जादू करने के लिए? –
आंतरिक उपयोग करें VISibleTo –