Esempio n. 1
0
def test_peek():
    """Test peek."""
    q = Queue()
    q.enqueue(3)
    q.enqueue(5)
    q.enqueue(7)
    assert q.peek() == 3
    assert q.peek() == 3
    assert q.peek() == 3
Esempio n. 2
0
def test_q_peek_3():
    from src.queue import Queue
    test_q = Queue()
    val = 6
    test_q.enqueue(val)
    test_q.enqueue("bob")
    assert test_q.peek() == 6
Esempio n. 3
0
def test_peek_queue_with_elements():
    queue = Queue([1, 2, "Dog"])

    expected = 1
    output = queue.peek()
    assert output == expected
    assert queue.queue[0] == expected
Esempio n. 4
0
def test_q_peek_3():
    from src.queue import Queue
    test_q = Queue()
    val = 6
    test_q.enqueue(val)
    test_q.enqueue("bob")
    assert test_q.peek() == 6
Esempio n. 5
0
def test_q_deq_2():
    from src.queue import Queue
    test_q = Queue()
    val = 6
    test_q.enqueue(val)
    test_q.enqueue("bob")
    peeked = test_q.peek()
    assert test_q.dequeue() == peeked
Esempio n. 6
0
def test_q_deq_2():
    from src.queue import Queue
    test_q = Queue()
    val = 6
    test_q.enqueue(val)
    test_q.enqueue("bob")
    peeked = test_q.peek()
    assert test_q.dequeue() == peeked
Esempio n. 7
0
def test_q_peek_2():
    from src.queue import Queue
    test_q = Queue()
    val = 6
    test_q.enqueue(val)
    assert test_q.peek() == val
Esempio n. 8
0
def test_q_peek():
    from src.queue import Queue
    test_q = Queue()
    assert test_q.peek() is None
Esempio n. 9
0
class TestQueue(unittest.TestCase):
    def setUp(self) -> None:
        self.queue = Queue()

    def test___str__(self) -> None:
        self.assertEqual(self.queue.__str__(), "[]")
        self.queue.push(1)
        self.assertEqual(self.queue.__str__(), "[1]")
        self.queue.push(2)
        self.assertEqual(self.queue.__str__(), "[2, 1]")
        self.queue.push(3)
        self.assertEqual(self.queue.__str__(), "[3, 2, 1]")

    def test_push(self) -> None:
        self.queue.push(1)
        self.assertEqual(self.queue.__str__(), "[1]")
        self.queue.push(2)
        self.assertEqual(self.queue.__str__(), "[2, 1]")

    def test_pop(self) -> None:
        self.assertIsNone(self.queue.pop())
        self.queue.push(1)
        self.assertEqual(self.queue.pop(), 1)
        self.assertIsNone(self.queue.pop())
        self.queue.push(1)
        self.queue.push(2)
        self.assertEqual(self.queue.pop(), 1)
        self.assertEqual(self.queue.pop(), 2)
        self.assertIsNone(self.queue.pop())

    def test_peek(self) -> None:
        self.assertIsNone(self.queue.peek())
        self.queue.push(1)
        self.assertEqual(self.queue.peek(), 1)
        self.queue.push(2)
        self.assertEqual(self.queue.peek(), 1)

    def test_search(self) -> None:
        self.assertIsNone(self.queue.search(1))
        self.queue.push(1)
        self.assertEqual(self.queue.search(1), 1)
        self.queue.push(2)
        self.assertEqual(self.queue.search(1), 1)
        self.assertEqual(self.queue.search(2), 2)
        self.assertIsNone(self.queue.search(-1))

    def test_is_empty_clear_len(self) -> None:
        self.assertEqual(len(self.queue), 0)
        self.queue.clear()
        self.assertEqual(len(self.queue), 0)
        self.assertTrue(self.queue.is_empty())
        self.queue.push(1)
        self.assertEqual(len(self.queue), 1)
        self.assertFalse(self.queue.is_empty())
        self.queue.pop()
        self.assertEqual(len(self.queue), 0)
        self.assertTrue(self.queue.is_empty())
        self.queue.push(1)
        self.assertEqual(len(self.queue), 1)
        self.queue.push(2)
        self.assertEqual(len(self.queue), 2)
        self.assertFalse(self.queue.is_empty())
        self.queue.clear()
        self.assertTrue(self.queue.is_empty())
        self.assertEqual(len(self.queue), 0)

    def test_big_test(self) -> None:
        test_case = 100_000
        for i in range(test_case):
            self.queue.push(i)
        for i in range(test_case):
            self.assertEqual(self.queue.pop(), i)
        self.assertIsNone(self.queue.pop())

    def test_repr(self) -> None:
        for i in range(6):
            self.queue.push(i)
        self.assertEqual(self.queue.__repr__(), "Queue [5, 4, 3, 2, 1, 0]")
        self.queue.push(6)
        self.assertEqual(self.queue.__repr__(), "Queue [6, 5, 4, 3, 2, 1, ...]")
Esempio n. 10
0
def test_peek_empty_queue():
    queue = Queue()

    expected = None
    output = queue.peek()
    assert output == expected
Esempio n. 11
0
def test_q_peek_2():
    from src.queue import Queue
    test_q = Queue()
    val = 6
    test_q.enqueue(val)
    assert test_q.peek() == val
Esempio n. 12
0
def test_q_peek():
    from src.queue import Queue
    test_q = Queue()
    assert test_q.peek() is None