Ejemplo n.º 1
0
def test_one_table_overridden_underscore_named_field(generate_traps):
    assert generate_traps([
        dbscheme.Table(name="foos",
                       columns=[dbscheme.Column("whatever_", "bar")]),
    ]) == [
        cpp.Trap("foos", name="Foos", fields=[cpp.Field("whatever", "bar")]),
    ]
Ejemplo n.º 2
0
def test_one_table_with_id(generate_traps):
    assert generate_traps([
        dbscheme.Table(name="foos", columns=[
            dbscheme.Column("bla", "int", binding=True)]),
    ]) == [
        cpp.Trap("foos", name="Foos", fields=[cpp.Field(
            "bla", "int")], id=cpp.Field("bla", "int")),
    ]
Ejemplo n.º 3
0
def test_trap_has_first_field_marked():
    fields = [
        cpp.Field("a", "x"),
        cpp.Field("b", "y"),
        cpp.Field("c", "z"),
    ]
    expected = deepcopy(fields)
    expected[0].first = True
    t = cpp.Trap("table_name", "name", fields)
    assert t.fields == expected
Ejemplo n.º 4
0
def get_trap(t: dbscheme.Table):
    id = get_binding_column(t)
    if id:
        id = get_field(id)
    return cpp.Trap(
        table_name=t.name,
        name=inflection.camelize(t.name),
        fields=[get_field(c) for c in t.columns],
        id=id,
    )
Ejemplo n.º 5
0
def test_one_table_with_two_binding_first_is_id(generate_traps):
    assert generate_traps([
        dbscheme.Table(name="foos", columns=[
            dbscheme.Column("x", "a", binding=True),
            dbscheme.Column("y", "b", binding=True),
        ]),
    ]) == [
        cpp.Trap("foos", name="Foos", fields=[
            cpp.Field("x", "a"),
            cpp.Field("y", "b"),
        ], id=cpp.Field("x", "a")),
    ]
Ejemplo n.º 6
0
def test_one_table(generate_traps):
    assert generate_traps([
        dbscheme.Table(name="foos", columns=[dbscheme.Column("bla", "int")]),
    ]) == [
        cpp.Trap("foos", name="Foos", fields=[cpp.Field("bla", "int")]),
    ]
Ejemplo n.º 7
0
def test_one_table_overridden_unsigned_field(generate_traps, name):
    assert generate_traps([
        dbscheme.Table(name="foos", columns=[dbscheme.Column(name, "bar")]),
    ]) == [
        cpp.Trap("foos", name="Foos", fields=[cpp.Field(name, "unsigned")]),
    ]
Ejemplo n.º 8
0
def test_one_table_special_types(generate_traps, column, field):
    assert generate_traps([
        dbscheme.Table(name="foos", columns=[column]),
    ]) == [
        cpp.Trap("foos", name="Foos", fields=[field]),
    ]