def test_dequeue_one_item_on_queue(self):
     value = 5
     queue = FifoQueue()
     queue.enqueue(value)
     removed_item = queue.dequeue()
     self.assertEqual(0, queue.size)
     self.assertEqual(5, removed_item)
Ejemplo n.º 2
0
    def breadth_first_search(self):
        visited_nodes = []
        # Use a queue to keep track of all the nodes you need to visit
        node_queue = FifoQueue()

        # Set starting point as no root node
        current_node = self.edges[0].node_from
        visited_nodes.append(current_node)

        while current_node:
            new_edge = self._return_new_edge(current_node, visited_nodes)
            if new_edge:
                visited_nodes.append(new_edge.node_to)
                node_queue.enqueue(new_edge.node_to)
            else:
                current_node = node_queue.dequeue()

        visited_node_values = [node.value for node in visited_nodes]

        return visited_node_values
 def test_dequeue_no_items_on_queue(self):
     queue = FifoQueue()
     removed_item = queue.dequeue()
     self.assertEqual(0, queue.size)
     self.assertEqual(None, removed_item)