コード例 #1
0
    def test_add_single_hit(self, parent_config, new_config):
        """Test if adding a dimension only touches the correct status"""
        del new_config['metadata']['user_args'][1]
        conflicts = detect_conflicts(parent_config, new_config)
        branch_builder = ExperimentBranchBuilder(conflicts, {})
        branch_builder.add_dimension('w_d')

        assert len(conflicts.get()) == 3
        assert not conflicts.get([ExperimentNameConflict])[0].is_resolved
        assert conflicts.get([NewDimensionConflict])[0].is_resolved
        assert not conflicts.get([MissingDimensionConflict])[0].is_resolved
コード例 #2
0
ファイル: test_branch_config.py プロジェクト: obilaniu/orion
    def test_add_single_hit(self, parent_config, new_config):
        """Test if adding a dimension only touches the correct status"""
        del new_config["metadata"]["user_args"][2]
        backward.populate_space(new_config)
        conflicts = detect_conflicts(parent_config, new_config)
        branch_builder = ExperimentBranchBuilder(conflicts, manual_resolution=True)
        branch_builder.add_dimension("w_d")

        assert len(conflicts.get()) == 3
        assert conflicts.get([ExperimentNameConflict])[0].is_resolved
        assert conflicts.get([NewDimensionConflict])[0].is_resolved
        assert not conflicts.get([MissingDimensionConflict])[0].is_resolved
コード例 #3
0
    def test_add_changed(self, parent_config, changed_config):
        """Test if adding a changed dimension solves the conflict"""
        conflicts = detect_conflicts(parent_config, changed_config)
        branch_builder = ExperimentBranchBuilder(conflicts, {})
        branch_builder.add_dimension('y')

        assert len(conflicts.get()) == 2
        assert len(conflicts.get_resolved()) == 1

        conflict = conflicts.get_resolved()[0]

        assert conflict.is_resolved
        assert isinstance(conflict.resolution, conflict.ChangeDimensionResolution)
コード例 #4
0
ファイル: test_branch_config.py プロジェクト: obilaniu/orion
    def test_add_new(self, parent_config, new_config):
        """Test if adding a new dimension solves the conflict"""
        conflicts = detect_conflicts(parent_config, new_config)
        branch_builder = ExperimentBranchBuilder(conflicts, manual_resolution=True)
        branch_builder.add_dimension("w_d")

        assert len(conflicts.get()) == 2
        assert len(conflicts.get_resolved()) == 2

        conflict = conflicts.get_resolved()[1]

        assert conflict.is_resolved
        assert isinstance(conflict.resolution, conflict.AddDimensionResolution)
コード例 #5
0
    def test_reset_dimension(self, parent_config, new_config):
        """Test if resetting a dimension unsolves the conflict"""
        conflicts = detect_conflicts(parent_config, new_config)
        branch_builder = ExperimentBranchBuilder(conflicts, {})

        branch_builder.add_dimension('w_d')
        assert len(conflicts.get_resolved()) == 1

        with pytest.raises(ValueError) as exc:
            branch_builder.reset('w_d~+')
        assert "'w_d~+' is not in list" in str(exc.value)
        assert len(conflicts.get_resolved()) == 1

        branch_builder.reset('w_d~+norm(0, 1)')

        assert len(conflicts.get()) == 2

        conflict = conflicts.get(dimension_name='w_d')[0]

        assert not conflict.is_resolved
        assert isinstance(conflict, NewDimensionConflict)
        assert len(conflicts.get_resolved()) == 0