예제 #1
0
        public void TestSyncRoot()
        {
            PairPriorityQueue <int, int> testQueue = new PairPriorityQueue <int, int>();

            // If IsSynchronized returns true, SyncRoot is allowed to be null
            if (!testQueue.IsSynchronized)
            {
                lock (testQueue.SyncRoot) {
                    testQueue.Clear();
                }
            }
        }
예제 #2
0
        public void TestCount()
        {
            PairPriorityQueue <float, string> testQueue = new PairPriorityQueue <float, string>();

            Assert.AreEqual(0, testQueue.Count);
            testQueue.Enqueue(12.34f, "a");
            Assert.AreEqual(1, testQueue.Count);
            testQueue.Enqueue(56.78f, "b");
            Assert.AreEqual(2, testQueue.Count);
            testQueue.Dequeue();
            Assert.AreEqual(1, testQueue.Count);
            testQueue.Enqueue(9.0f, "c");
            Assert.AreEqual(2, testQueue.Count);
            testQueue.Clear();
            Assert.AreEqual(0, testQueue.Count);
        }