Exemple #1
0
    def test_enqueue(self):
        q = Queue()

        self.assertTrue(q.is_empty())
        q.enqueue(1)
        self.assertFalse(q.is_empty())

        self.assertEqual(q.peek(), 1)

        q.enqueue(2)
        self.assertNotEqual(q.peek(), 2)
Exemple #2
0
    def test_peek(self):
        q = Queue()

        self.assertRaises(IndexError, q.peek)

        q.enqueue(0)
        self.assertEqual(q.peek(), 0)

        q.enqueue(1)
        self.assertNotEqual(q.peek(), 1)
        self.assertEqual(q.peek(), 0)

        q.dequeue()
        self.assertEqual(q.peek(), 1)
Exemple #3
0
    def test_dequeue(self):
        q = Queue()

        self.assertRaises(IndexError, q.dequeue)

        for i in range(10):
            q.enqueue(i)

        for i in range(9):
            self.assertEqual(q.peek(), i)
            q.dequeue()
            self.assertNotEqual(q.peek(), i)

        self.assertFalse(q.is_empty())
        q.dequeue()
        self.assertTrue(q.is_empty())
Exemple #4
0
    def test_str(self):
        q = Queue()

        self.assertEqual(str(q), '')

        s = ''

        for i in range(50):
            r = random.randint(1, 200)

            q.enqueue(r)
            if (s == ''):
                s = str(r)
            else:
                s = str(r) + ' ' + s

        k = len(str(q.peek()))
        s = s[:-(k + 1)]
        q.dequeue()

        self.assertEqual(str(q), s)