Exemple #1
0
def test_extend(pz_four_values, val_1, val_2, val_3, val_4, val_new,
                val_extra):
    pz_four_values.extend([val_new, val_extra])
    orm_utils.orm_commit(pz_four_values, "update")

    assert pz_four_values.values == [
        val_1, val_2, val_3, val_4, val_new, val_extra
    ]
Exemple #2
0
def test_dict_round_trip(val_1, val_2, val_3, val_4):
    p_orig = ParameterDao("Z", [val_1, val_2, val_3, val_4], uid=1)
    orm_utils.orm_commit(p_orig, "add")

    parameter_dict = p_orig.to_dict()
    p_new = ParameterDao.from_dict(parameter_dict)

    assert p_new == p_orig
Exemple #3
0
def test_from_dict_orm(orm):
    v_dict = {
        "name": "A",
        "uid": 1,
        "position": 3,
    }
    val = ValueDao.from_dict(v_dict)
    orm_utils.orm_commit(val, "add")
    assert val.name == "A"
    assert val.uid == 1
    assert val.position == 3  # @UndefinedVariable # pylint: disable=no-member
Exemple #4
0
def test_to_dict(parmset_abcde, parm_a, parm_b, parm_c, parm_d, parm_e):
    parmset_abcde.set_adjacent(parm_a, parm_c, False)
    parmset_abcde.set_adjacent(parm_b, parm_e, False)
    orm_utils.orm_commit(parmset_abcde, "update")

    expected_dict = {
        "uid": 1,
        "parameters": [p.to_dict() for p in [parm_a, parm_b, parm_c, parm_d, parm_e]],
        "position": None,
    }

    assert parmset_abcde.to_dict() == expected_dict
Exemple #5
0
def test_from_dict(orm, val_1, val_2, val_3, val_4):
    p_dict = {
        "name": "Z",
        "uid": 1,
        "position": 4,
        "values": [v.to_dict() for v in [val_1, val_2, val_3, val_4]]
    }
    p = ParameterDao.from_dict(p_dict)
    orm_utils.orm_commit(p, "add")
    assert p.name == "Z"
    assert p.uid == 1
    assert p.position == 4  # pylint: disable=no-member
    assert p.values == [val_1, val_2, val_3, val_4]
Exemple #6
0
def test_schema_round_trip(orm, parmset_abcde, parm_a, parm_b, parm_c, parm_e):
    parmset_abcde.set_adjacent(parm_a, parm_c, False)
    parmset_abcde.set_adjacent(parm_b, parm_e, False)
    orm_utils.orm_commit(parmset_abcde, "update")

    parmset_schema = ParameterSetSchema()
    parm_schema = ParameterSchema()
    parmset_dict = parmset_schema.dump(parmset_abcde)
    ps_loaded = parmset_schema.load(parmset_dict, session=orm.session)
    assert ps_loaded == parmset_abcde
    assert ps_loaded is parmset_abcde

    parm_b_dict = parmset_schema.dump(parm_b)
    parm_b_loaded = parm_schema.load(parm_b_dict, session=orm.session)
    assert parm_b_loaded == parm_b
    assert parm_b_loaded is parm_b

    parm_e_dict = parmset_schema.dump(parm_e)
    parm_e_loaded = parm_schema.load(parm_e_dict, session=orm.session)
    assert parm_e_loaded == parm_e
    assert parm_e_loaded is parm_e
Exemple #7
0
    def get(self):
        ORM.drop_all()
        ORM.create_all()
        RED = orm_utils.create_value("Red")
        GREEN = orm_utils.create_value("Green")

        BIRD = orm_utils.create_value("Bird")
        CAT = orm_utils.create_value("Cat")
        DOG = orm_utils.create_value("Dog")
        FISH = orm_utils.create_value("Fish")

        FAST = orm_utils.create_value("Fast")
        SLOW = orm_utils.create_value("Slow")

        EIGHTIES = orm_utils.create_value("80s")
        TWENTIES = orm_utils.create_value("20s")

        orm_utils.orm_commit(
            [RED, GREEN, BIRD, CAT, DOG, FISH, FAST, SLOW, EIGHTIES, TWENTIES],
            "add")

        p1 = orm_utils.create_parameter("Colour", [RED, GREEN])
        p2 = orm_utils.create_parameter("Pet", [BIRD, CAT, DOG, FISH])
        p3 = orm_utils.create_parameter("Speed", [FAST, SLOW])
        p4 = orm_utils.create_parameter("Music", [EIGHTIES, TWENTIES])

        orm_utils.orm_commit([p1, p2, p3, p4], "add")

        parm_set = orm_utils.create_parameter_set(parameters=[p1, p2, p3, p4])
        orm_utils.orm_commit(parm_set, "add")

        parameter_set = orm_utils.get_or_404_parameter_set()
        response_content = {
            "parameter_set": PARAMETER_SET_SCHEMA.dump(parameter_set),
            "parameter_set_url": url_for('.parameter_set'),
        }
        return response_content
Exemple #8
0
def test_set_name(pz_four_values):
    pz_four_values.name = "X"
    orm_utils.orm_commit(pz_four_values, "update")

    assert pz_four_values.name == "X"
Exemple #9
0
def test_clear(pz_four_values):
    pz_four_values.clear()
    orm_utils.orm_commit(pz_four_values, "update")

    assert pz_four_values.name == "Z"
    assert pz_four_values.values == []
Exemple #10
0
def test_remove(pz_four_values, val_1, val_2, val_3, val_4):
    pz_four_values.remove(val_3)
    orm_utils.orm_commit(pz_four_values, "update")

    assert pz_four_values.values == [val_1, val_2, val_4]
Exemple #11
0
def test_pop_index(pz_four_values, val_1, val_2, val_3, val_4):
    popped_val = pz_four_values.pop(2)
    orm_utils.orm_commit(pz_four_values, "update")

    assert popped_val == val_3
    assert pz_four_values.values == [val_1, val_2, val_4]
Exemple #12
0
def test_insert(pz_four_values, val_1, val_2, val_3, val_4, val_new):
    pz_four_values.insert(1, val_new)
    orm_utils.orm_commit(pz_four_values, "update")

    assert pz_four_values.values == [val_1, val_new, val_2, val_3, val_4]
Exemple #13
0
def test_schema_deserialize(orm, parmset_abcde, parm_a, parm_b, parm_c,
                            parm_e):
    parmset_abcde.set_adjacent(parm_a, parm_c, False)
    parmset_abcde.set_adjacent(parm_b, parm_e, False)
    orm_utils.orm_commit(parmset_abcde, "update")

    parmset_schema = ParameterSetSchema()
    parmset_dict = {
        'name':
        None,
        'parameters': [{
            'excluded': [3],
            'excluded_by': [],
            'name':
            'A',
            'parameter_set':
            1,
            'position':
            0,
            'uid':
            1,
            'values': [{
                'name': 'A1',
                'parameter': 1,
                'position': 0,
                'uid': 1
            }, {
                'name': 'A2',
                'parameter': 1,
                'position': 1,
                'uid': 2
            }, {
                'name': 'A3',
                'parameter': 1,
                'position': 2,
                'uid': 3
            }]
        }, {
            'excluded': [5],
            'excluded_by': [],
            'name':
            'B',
            'parameter_set':
            1,
            'position':
            1,
            'uid':
            2,
            'values': [{
                'name': 'B1',
                'parameter': 2,
                'position': 0,
                'uid': 4
            }, {
                'name': 'B2',
                'parameter': 2,
                'position': 1,
                'uid': 5
            }, {
                'name': 'B3',
                'parameter': 2,
                'position': 2,
                'uid': 6
            }]
        }, {
            'excluded': [],
            'excluded_by': [1],
            'name':
            'C',
            'parameter_set':
            1,
            'position':
            2,
            'uid':
            3,
            'values': [{
                'name': 'C1',
                'parameter': 3,
                'position': 0,
                'uid': 7
            }, {
                'name': 'C2',
                'parameter': 3,
                'position': 1,
                'uid': 8
            }, {
                'name': 'C3',
                'parameter': 3,
                'position': 2,
                'uid': 9
            }]
        }, {
            'excluded': [],
            'excluded_by': [],
            'name':
            'D',
            'parameter_set':
            1,
            'position':
            3,
            'uid':
            4,
            'values': [{
                'name': 'D1',
                'parameter': 4,
                'position': 0,
                'uid': 10
            }, {
                'name': 'D2',
                'parameter': 4,
                'position': 1,
                'uid': 11
            }, {
                'name': 'D3',
                'parameter': 4,
                'position': 2,
                'uid': 12
            }, {
                'name': 'D4',
                'parameter': 4,
                'position': 3,
                'uid': 13
            }]
        }, {
            'excluded': [],
            'excluded_by': [2],
            'name':
            'E',
            'parameter_set':
            1,
            'position':
            4,
            'uid':
            5,
            'values': [{
                'name': 'E1',
                'parameter': 5,
                'position': 0,
                'uid': 14
            }, {
                'name': 'E2',
                'parameter': 5,
                'position': 1,
                'uid': 15
            }]
        }],
        'position':
        None,
        'uid':
        1
    }
    ps_loaded = parmset_schema.load(parmset_dict, session=orm.session)
    assert ps_loaded == parmset_abcde
    assert ps_loaded is parmset_abcde
Exemple #14
0
def test_append(pz_four_values, val_1, val_2, val_3, val_4, val_new):
    pz_four_values.append(val_new)
    orm_utils.orm_commit(pz_four_values, "update")

    assert pz_four_values.values == [val_1, val_2, val_3, val_4, val_new]
Exemple #15
0
def test_delitem(pz_four_values, val_1, val_2, val_4):
    del pz_four_values[2]
    orm_utils.orm_commit(pz_four_values, "update")

    assert pz_four_values.values == [val_1, val_2, val_4]
Exemple #16
0
def test_setitem(pz_four_values, val_1, val_2, val_4, val_new):
    pz_four_values[2] = val_new
    orm_utils.orm_commit(pz_four_values, "update")

    assert pz_four_values.values == [val_1, val_2, val_new, val_4]
Exemple #17
0
def perform_orm_commit_or_500(items, operation="add"):
    try:
        orm_utils.orm_commit(items, operation)
    except SQLAlchemyError as orm_err:
        exception_500(orm_err)
Exemple #18
0
def create_test_parameter(*args, **kwargs):
    new_value = orm_utils.create_parameter(*args, **kwargs)
    orm_utils.orm_commit(new_value, "add")
    return new_value