示例#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
示例#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
示例#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
示例#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
示例#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
示例#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
示例#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
示例#8
0
def test_q_peek():
    from src.queue import Queue
    test_q = Queue()
    assert test_q.peek() is None
示例#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, ...]")
示例#10
0
def test_peek_empty_queue():
    queue = Queue()

    expected = None
    output = queue.peek()
    assert output == expected
示例#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
示例#12
0
def test_q_peek():
    from src.queue import Queue
    test_q = Queue()
    assert test_q.peek() is None