def test_parent_fetch_trials(create_db_instance): """Test that experiment fetch trials from parent properly (adapters are muted)""" experiment_name = 'supernaedo2.3' root_name = 'supernaedo2' leaf_names = ['supernaedo2.3'] experiment = ExperimentView(experiment_name) exp_node = ExperimentNode(experiment.name, experiment.version, experiment=experiment) exp_node = build_trimmed_tree(experiment, root_name, leaf_names) assert exp_node.item.name == experiment_name assert exp_node.parent.item.name == root_name assert len(exp_node.children) == 0 # 2 # | # 2.3 assert len(list(exp_node.root)) == 2 experiment.connect_to_version_control_tree(exp_node) for node in exp_node.root: node.item._experiment.refers['adapter'] = Adapter.build([]) query = {'status': 'completed'} assert len(experiment.fetch_trials(query)) == 4 assert len(experiment._experiment._node.parent.item.fetch_trials(query)) == 6 assert len(experiment.fetch_trials_tree(query)) == 10
def __init__(self, name, version=None, mode="r"): self._id = None self.name = name self.version = version if version else 1 self._mode = mode self._node = None self.refers = {} self.metadata = {} self.max_trials = None self.max_broken = None self.space = None self.algorithms = None self.working_dir = None self._storage = get_storage() self._node = ExperimentNode(self.name, self.version, experiment=self)
def __init__(self, name, version=None): self._id = None self.name = name self.version = version if version else 1 self._node = None self.refers = {} self.metadata = {} self.pool_size = None self.max_trials = None self.space = None self.algorithms = None self.working_dir = None self.producer = {} # this needs to be an attribute because we override it in ExperienceView self._storage = get_storage() self._node = ExperimentNode(self.name, self.version, experiment=self)
def connect_to_version_control_tree(self, experiment): """Build the EVC and connect the experiment to it""" experiment_node = ExperimentNode(experiment.name, experiment=experiment) experiment.connect_to_version_control_tree(experiment_node)