def get_node(dictionary, parent=None): new_node = Node() new_node.name = dictionary["name"] new_node.preferences = dictionary["preferences"] new_node.parent = parent if dictionary["children"] == "alternatives": new_node.children = dictionary["children"] else: new_node.children = [ FileUtils.get_node(child, new_node) for child in dictionary["children"] ] return new_node
def test_has_children(self): game = TestGame() node = Node(game) self.assertFalse(node.has_children()) node.children = [None] self.assertTrue(node.has_children())
def test_select_child(self): game = TestGame() node = Node(game) node.visits_count = 1 child1 = Node(game, parent=node) child1.visits_count = 1 child2 = Node(game, parent=node) child2.visits_count = 1 child2.cumulative_score = 2 child3 = Node(game, parent=node) child3.visits_count = 1 node.children = [child1, child2, child3] self.assertEqual(node.select_child(), child2)