def test_update_models_fails_duplicate_table():
    with pytest.raises(DuplicateTableException):
        update_models(new_obj=c.parent,
                      current_table=c.parent,
                      tables=[c.parent],
                      relations=[],
                      )
def test_update_models_fails_relation_no_col():
    with pytest.raises(RelationNoColException):
        update_models(new_obj=c.relation,
                      current_table=c.parent,
                      tables=[c.parent],
                      relations=[],
                      )
Exemple #3
0
def test_update_models_fails_duplicate_table():
    with pytest.raises(DuplicateTableException):
        update_models(new_obj=c.parent,
                      current_table=c.parent,
                      tables=[c.parent],
                      relations=[],
                      )
Exemple #4
0
def test_update_models_fails_relation_no_col():
    with pytest.raises(RelationNoColException):
        update_models(new_obj=c.relation,
                      current_table=c.parent,
                      tables=[c.parent],
                      relations=[],
                      )
def test_update_models_new_obj_bad_class():
    with pytest.raises(ValueError):
        update_models(
            new_obj=c.Child,
            current_table=c.parent,
            tables=[c.parent, ],
            relations=[],
        )
Exemple #6
0
def test_update_models_new_obj_bad_class():
    with pytest.raises(ValueError):
        update_models(
            new_obj=c.Child,
            current_table=c.parent,
            tables=[c.parent, ],
            relations=[],
        )
Exemple #7
0
def test_update_models_add_column():

    parent = Table(name="parent", columns=[c.parent_id])
    current_table, tables, relations = update_models(
        new_obj=c.parent_name, current_table=parent, tables=[parent], relations=[]
    )
    assert c.parent_name in current_table.columns
    assert c.parent_name in tables[0].columns
def test_update_models_add_table():
    current_table, tables, relations = \
        update_models(
            new_obj=c.child,
            current_table=c.parent,
            tables=[c.parent, ],
            relations=[],
        )
    assert c.child in tables
def test_update_models_add_relation():
    current_table, tables, relations = \
        update_models(
            new_obj=c.relation,
            current_table=c.parent,
            tables=[c.parent, c.child],
            relations=[],
        )
    assert c.relation in relations
Exemple #10
0
def test_update_models_add_table():
    current_table, tables, relations = \
        update_models(
            new_obj=c.child,
            current_table=c.parent,
            tables=[c.parent, ],
            relations=[],
        )
    assert c.child in tables
Exemple #11
0
def test_update_models_add_relation():
    current_table, tables, relations = \
        update_models(
            new_obj=c.relation,
            current_table=c.parent,
            tables=[c.parent, c.child],
            relations=[],
        )
    assert c.relation in relations
def test_update_models_add_column():
    parent = Table(
        name='parent',
        columns=[c.parent_id],
    )
    current_table, tables, relations = \
        update_models(
            new_obj=c.parent_name,
            current_table=parent,
            tables=[parent, ],
            relations=[],
        )
    assert c.parent_name in current_table.columns
    assert c.parent_name in tables[0].columns
def test_update_models_fails_no_current_table():
    for new_obj in (c.relation, c.parent_id):
        with pytest.raises(NoCurrentTableException):
            update_models(new_obj, None, [], [])
Exemple #14
0
def test_update_models_fails_no_current_table():
    for new_obj in (c.relation, c.parent_id):
        with pytest.raises(NoCurrentTableException):
            update_models(new_obj, None, [], [])
Exemple #15
0
def test_update_models_fails_duplicate_col():
    with pytest.raises(DuplicateColumnException):
        update_models(new_obj=c.parent_name, current_table=c.parent, tables=[c.parent], relations=[])