Example #1
0
 def test_is_full_case2(self):
     q3 = Queue(3)
     for i in range(3):
         q3.enqueue(i)
     self.assertTrue(q3.get_size() == 3)
     self.assertFalse(q3.enqueue("test"))
     self.assertTrue(q3.dequeue() == 0)
     self.assertTrue(q3.get_size() == 2)
Example #2
0
def print_queue():
    print("\n---------------------Queue---------------------\n")
    q = Queue()
    q.push("Hello")
    q.push("World")
    q.push("From")
    q.push("Truc")
    q.push("2020")
    q.print()
    print("size: ", q.get_size())

    q.pop()
    q.pop()
    q.print()
    print("size: ", q.get_size())
Example #3
0
class TestQueue(unittest.TestCase):
    def setUp(self):
        self.q = Queue()

    def test_empty_queue(self):
        self.assertEqual(self.q.get_front(), None)
        self.assertEqual(self.q.get_rear(), None)
        self.assertEqual(self.q.get_front(), self.q.get_rear())
        self.assertEqual(self.q.get_size(), 0)
        self.assertEqual(self.q.dequeue(), None)

    def test_one_element_queue(self):
        q = Queue(1)

        self.assertEqual(q.get_front().get_value(), 1)
        self.assertEqual(q.get_rear().get_value(), 1)
        self.assertEqual(type(q.get_front()), Node)
        self.assertEqual(type(q.get_rear()), Node)
        self.assertEqual(q.get_rear(), q.get_front())

        self.assertEqual(q.get_rear().get_previous(), None)
        self.assertEqual(q.get_rear().get_next(), None)
        self.assertEqual(q.get_front().get_next(), None)
        self.assertEqual(q.get_front().get_previous(), None)
        self.assertEqual(q.get_size(), 1)

    def test_enqueue(self):
        for i in range(1, 4):
            self.q.enqueue(i)
        self.assertEqual(self.q.get_front().get_value(), 1)
        self.assertEqual(self.q.get_rear().get_next().get_value(), 2)
        self.assertEqual(self.q.get_front().get_next(), None)
        self.assertEqual(self.q.get_front().get_previous().get_value(), 2)
        self.assertEqual(self.q.get_size(), 3)

    def test_deueue(self):
        for i in range(1, 8):
            self.q.enqueue(i)
        removed = self.q.dequeue()
        self.assertEqual(self.q.get_size(), 6)
        self.assertEqual(self.q.get_front().get_value(), 2)
        self.assertEqual(self.q.get_front().get_next(), None)
        self.assertEqual(self.q.get_front().get_previous().get_value(), 3)
        self.assertEqual(removed.get_value(), 1)
        self.assertEqual(removed.get_previous(), None)
Example #4
0
    def test_one_element_queue(self):
        q = Queue(1)

        self.assertEqual(q.get_front().get_value(), 1)
        self.assertEqual(q.get_rear().get_value(), 1)
        self.assertEqual(type(q.get_front()), Node)
        self.assertEqual(type(q.get_rear()), Node)
        self.assertEqual(q.get_rear(), q.get_front())

        self.assertEqual(q.get_rear().get_previous(), None)
        self.assertEqual(q.get_rear().get_next(), None)
        self.assertEqual(q.get_front().get_next(), None)
        self.assertEqual(q.get_front().get_previous(), None)
        self.assertEqual(q.get_size(), 1)
Example #5
0
class TestStack(unittest.TestCase):

    def setUp(self):
        self.queue = Queue()

    def test_init(self):
        self.assertEqual(self.queue.get_size(), 0)
        new_queue = Queue("Bob")
        self.assertEqual(new_queue.get_size(), 1)

    def test_enqueue(self):
        self.queue.enqueue("Bob")
        self.assertEqual(self.queue.get_size(), 1)

    def test_dequeue(self):
        self.queue.enqueue("Bob")
        dequeued_item = self.queue.dequeue()
        self.assertEqual(dequeued_item, "Bob")
        another_dequeued_item = self.queue.dequeue()
        self.assertIsNone(another_dequeued_item)

    def test_peek(self):
        self.queue.enqueue("Bob")
        self.queue.enqueue("Bill")
        self.queue.enqueue("Boris")
        peeked_item = self.queue.peek()
        self.assertEqual(peeked_item, "Bob")

    def test_clear(self):
        for i in range(0, 100):
            self.queue.enqueue("Bob")
        self.assertEqual(self.queue.get_size(), 100)
        self.queue.clear()
        self.assertEqual(self.queue.get_size(), 0)

    def test_get_size(self):
        self.assertEqual(self.queue.get_size(), self.queue.linked_list.size)
Example #6
0
class TestQueue(unittest.TestCase):
    def setUp(self):
        self.queue = Queue()

    def test_enqueue(self):
        self.assertEqual(0, self.queue.get_size())
        self.queue.enqueue(5)
        self.assertEqual(1, self.queue.get_size())
        self.assertEqual(5, self.queue.peek())
        self.queue.enqueue(6)
        self.assertEqual(2, self.queue.get_size())
        self.assertEqual(5, self.queue.peek())
        self.queue.enqueue("hello")
        self.assertEqual(3, self.queue.get_size())
        self.assertEqual(5, self.queue.peek())

    def test_dequeue(self):
        self.queue.enqueue(12)
        self.queue.enqueue(14)
        self.queue.enqueue(16)
        self.assertEqual(3, self.queue.get_size())
        self.assertEqual(12, self.queue.dequeue())
        self.assertEqual(2, self.queue.get_size())
        self.assertEqual(14, self.queue.dequeue())
        self.assertEqual(1, self.queue.get_size())
        self.assertEqual(16, self.queue.dequeue())
        self.assertEqual(0, self.queue.get_size())

    def test_peek(self):
        self.assertEqual(None, self.queue.peek())
        self.queue.enqueue("test")
        self.assertEqual("test", self.queue.peek())
        self.queue.enqueue("word")
        self.assertEqual("test", self.queue.peek())
        self.queue.dequeue()
        self.assertEqual("word", self.queue.peek())
        self.queue.dequeue()
        self.assertEqual(None, self.queue.peek())
Example #7
0
queue.add_to_queue(person)

queue.print_queue()

persons = ("John", "1-675-657"), ("Ron", "1-908-089"), ("Anna", "1-987-987")

queue = [NodeQ(name, phone) for name, phone in persons]

new_queue = Queue()

for person in queue:
    new_queue.add_to_queue(person)

new_queue.print_queue()

print("Queue size is {}".format(new_queue.get_size()))

print("Removed element {} from Queue".format(new_queue.remove_from_queue()))

print("Queue size is {}".format(new_queue.get_size()))

#new_queue.find_element("John")

new_queue.find_element("Anna")

print("\n---------------------- Stack -------------------------------")

text = "Mary had a little lamb."

data = NodeS(text)
Example #8
0
class QueueTest(unittest.TestCase):
    def setUp(self):
        self.q = Queue()

    def test_initialize_queue_buffer(self):
        self.assertTrue(len(self.q.array) == 100)
        self.assertTrue(self.q.max_buffer == 100)
        self.assertTrue(self.q.get_size() == 0)

    def test_initialize_queue_change_buffer_size(self):
        q = Queue(10)
        self.assertTrue(len(q.array) == 10)
        self.assertTrue(q.max_buffer == 10)
        self.assertTrue(q.get_size() == 0)

    def test_is_full(self):
        for i in range(100):
            self.q.enqueue(i)
        self.assertTrue(self.q.get_size() == 100)
        self.assertTrue(len(self.q.array) == 100)
        self.assertFalse(self.q.enqueue("test"))
        self.assertTrue(self.q.get_size() == 100)

    def test_is_full_case2(self):
        q3 = Queue(3)
        for i in range(3):
            q3.enqueue(i)
        self.assertTrue(q3.get_size() == 3)
        self.assertFalse(q3.enqueue("test"))
        self.assertTrue(q3.dequeue() == 0)
        self.assertTrue(q3.get_size() == 2)

    def test_is_empty(self):
        self.assertFalse(self.q.dequeue())

    def test_enqueue(self):
        self.q.enqueue("test1")
        self.q.enqueue("test2")
        self.q.enqueue("test3")
        queue_list = self.q.get_queue_all_list()
        self.assertTrue(queue_list[0] == "test1")
        self.assertTrue(queue_list[1] == "test2")
        self.assertTrue(queue_list[2] == "test3")
        self.assertTrue(len(queue_list) == 3)
        self.assertTrue(self.q.tail == 3)

    def test_dequeue(self):
        self.q.enqueue("test1")
        self.q.enqueue("test2")
        self.q.enqueue("test3")
        self.assertTrue(self.q.dequeue() == "test1")
        print(self.q.get_queue_all_list())
        self.assertTrue(len(self.q.get_queue_all_list()) == 2)
        self.assertTrue(self.q.head == 1)
        self.assertTrue(self.q.tail == 3)

    def test_en_and_dequeu(self):
        self.q.enqueue("test1")
        self.q.enqueue("test2")
        self.assertTrue(self.q.dequeue() == "test1")
        self.q.enqueue("test3")
        self.assertTrue(self.q.get_size() == 2)
        self.assertTrue(self.q.head == 1)
        self.assertTrue(self.q.tail == 3)
        self.assertTrue(self.q.dequeue() == "test2")
        self.q.enqueue("test4")
        self.assertTrue(self.q.get_size() == 2)
        self.assertTrue(self.q.head == 2)
        self.assertTrue(self.q.tail == 4)

    def test_get_stack_all_list(self):
        self.q.enqueue("test1")
        self.q.enqueue("test2")
        self.q.enqueue("test3")
        check_list = ["test1", "test2", "test3"]
        self.assertTrue(len(self.q.get_queue_all_list()) == 3)
        self.assertTrue(self.q.get_queue_all_list() == check_list)

        self.assertTrue(self.q.dequeue() == check_list.pop(0))
        self.assertTrue(len(self.q.get_queue_all_list()) == 2)
        self.assertTrue(self.q.get_queue_all_list() == check_list)
Example #9
0
 def test_initialize_queue_change_buffer_size(self):
     q = Queue(10)
     self.assertTrue(len(q.array) == 10)
     self.assertTrue(q.max_buffer == 10)
     self.assertTrue(q.get_size() == 0)
Example #10
0
 def test_init(self):
     self.assertEqual(self.queue.get_size(), 0)
     new_queue = Queue("Bob")
     self.assertEqual(new_queue.get_size(), 1)