public void TestEmpty()
        {
            PriorityLinkedList <JobTimeoutModel> pq = this.CreateSimpleQueue();

            pq.Dequeue();
            pq.Dequeue();
            pq.Dequeue();
            Assert.Equal(0, pq.Count);
        }
        public void TestClear2()
        {
            PriorityLinkedList <JobTimeoutModel> pq = this.CreateSimpleQueue();

            pq.Dequeue();
            pq.Dequeue();
            pq.Dequeue();
            Assert.Equal(0, pq.Count);
            Assert.False(pq.Contains(this.j1));
            Assert.False(pq.Contains(this.j2));
            Assert.False(pq.Contains(this.j3));
        }
        public void TestRemove3()
        {
            PriorityLinkedList <JobTimeoutModel> pq = this.CreateSimpleQueue();

            pq.Remove(this.j3);
            JobTimeoutModel d1 = pq.Dequeue();
            JobTimeoutModel d2 = pq.Dequeue();

            Assert.Equal(d1, this.j1);
            Assert.Equal(d2, this.j2);
            // queue should be empty now
            Assert.Null(pq.Dequeue());
        }
        public void TestCount1()
        {
            PriorityLinkedList <JobTimeoutModel> pq = this.CreateSimpleQueue();

            Assert.Equal(3, pq.Count);
            pq.Dequeue();
            Assert.Equal(2, pq.Count);
            pq.Dequeue();
            Assert.Equal(1, pq.Count);
            pq.Dequeue();
            Assert.Equal(0, pq.Count);
            pq.Dequeue();
            Assert.Equal(0, pq.Count);
            pq.Enqueue(this.j1);
            Assert.Equal(1, pq.Count);
        }
        public void TestDequeue()
        {
            PriorityLinkedList <JobTimeoutModel> pq = this.CreateSimpleQueue();
            JobTimeoutModel d1 = pq.Dequeue();

            Assert.Equal(2, pq.Count);
            JobTimeoutModel d2 = pq.Dequeue();

            Assert.Equal(1, pq.Count);
            JobTimeoutModel d3 = pq.Dequeue();

            Assert.Equal(0, pq.Count);
            Assert.Equal(this.j1, d1);
            Assert.Equal(this.j2, d2);
            Assert.Equal(this.j3, d3);
        }
Ejemplo n.º 6
0
 /// <summary>
 ///     Gets a job timeout from the queue.
 /// </summary>
 /// <returns></returns>
 public static JobTimeoutModel GetPriorityJob()
 {
     lock (Queue) {
         return(Queue.Dequeue());
     }
 }