Exemple #1
0
def test_step_two_create_table(app):
    db = DAL(app, auto_migrate=False)
    db.define_models(StepTwoThing)
    ops = _make_ops(db)
    op = ops.ops[0]
    sql = _make_sql(db, op)
    assert sql == _step_two_sql
Exemple #2
0
def db():
    app = App(__name__)
    db = DAL(app, config=sdict(uri="sqlite://dal.db"))
    db.define_models(
        [
            Stuff,
            Person,
            Thing,
            Feature,
            Price,
            Doctor,
            Patient,
            Appointment,
            User,
            Organization,
            Membership,
            House,
            Mouse,
            NeedSplit,
            Zoo,
            Animal,
            Elephant,
            Dog,
            Subscription,
        ]
    )
    return db
Exemple #3
0
def test_step_two_create_table(app):
    db = DAL(app, auto_migrate=False)
    db.define_models(StepTwoThing)
    ops = _make_ops(db)
    op = ops.ops[0]
    sql = _make_sql(db, op)
    assert sql == _step_two_sql
Exemple #4
0
def db():
    app = App(__name__)
    db = DAL(app, config=sdict(uri='sqlite://dal.db'))
    db.define_models([
        Stuff, Person, Thing, Feature, Price, Doctor, Patient, Appointment,
        House, Mouse, NeedSplit, Zoo, Animal, Elephant
    ])
    return db
def db():
    app = App(__name__)
    db = DAL(app, config=sdict(uri='sqlite://validators.db'))
    db.define_models([
        A, AA, AAA, B, Consist, Len, Inside, Num, Eq, Match, Anyone, Proc,
        Person, Thing, Allowed, Mixed
    ])
    return db
Exemple #6
0
def db():
    app = App(__name__)
    db = DAL(app, config=sdict(uri='sqlite://dal.db'))
    db.define_models([
        Stuff, Person, Thing, Feature, Price, Doctor, Patient, Appointment,
        House, Mouse, NeedSplit, Zoo, Animal, Elephant
    ])
    return db
Exemple #7
0
def db():
    app = App(__name__)
    db = DAL(app, config=sdict(uri='sqlite://validators.db'))
    db.define_models([
        A, AA, AAA, B, Consist, Len, Inside, Num, Eq, Match, Anyone, Proc,
        Person, Thing, Allowed, Mixed
    ])
    return db
Exemple #8
0
def test_step_one_create_table(app):
    db = DAL(app, auto_migrate=False)
    db.define_models(StepOneThing)
    ops = _make_ops(db)
    diffs = ops.as_diffs()
    assert len(diffs) == 1 and diffs[0][0] == "add_table"
    op = ops.ops[0]
    sql = _make_sql(db, op)
    assert sql == _step_one_sql
Exemple #9
0
def test_step_one_create_table(app):
    db = DAL(app, auto_migrate=False)
    db.define_models(StepOneThing)
    ops = _make_ops(db)
    diffs = ops.as_diffs()
    assert len(diffs) == 1 and diffs[0][0] == "add_table"
    op = ops.ops[0]
    sql = _make_sql(db, op)
    assert sql == _step_one_sql
Exemple #10
0
def test_step_three_drop_column(app):
    db = DAL(app, auto_migrate=False)
    db.define_models(StepThreeThingTwo)
    ops = _make_ops(db)
    db2 = DAL(app, auto_migrate=False)
    db2.define_models(StepThreeThingThree)
    ops2 = _make_ops(db2, ops)
    op = ops2.ops[0]
    sql = _make_sql(db, op)
    assert sql == _step_three_sql_drop
Exemple #11
0
def test_step_four_alter_table(app):
    db = DAL(app, auto_migrate=False)
    db.define_models(StepFourThing)
    ops = _make_ops(db)
    db2 = DAL(app, auto_migrate=False)
    db2.define_models(StepFourThingEdit)
    ops2 = _make_ops(db2, ops)
    sql = []
    for op in ops2.ops:
        sql.append(_make_sql(db2, op))
    assert "\n".join(sql) == _step_four_sql
Exemple #12
0
def test_step_one_drop_table(app):
    db = DAL(app, auto_migrate=False)
    db.define_models(StepOneThing)
    ops = _make_ops(db)
    db2 = DAL(app, auto_migrate=False)
    db2.define_models()
    ops2 = _make_ops(db2, ops)
    diffs = ops2.as_diffs()
    assert len(diffs) == 1 and diffs[0][0] == "remove_table"
    op = ops2.ops[0]
    sql = _make_sql(db2, op)
    assert sql == _step_one_sql_drop
Exemple #13
0
def test_step_five_indexes(app):
    db = DAL(app, auto_migrate=False)
    db.define_models(StepFiveThing)
    ops = _make_ops(db)
    index_ops = ops.ops[1:]
    for op in index_ops:
        sql = _make_sql(db, op)
        assert sql in _step_five_sql_before
    db2 = DAL(app, auto_migrate=False)
    db2.define_models(StepFiveThingEdit)
    ops2 = _make_ops(db2, ops)
    for op in ops2.ops:
        sql = _make_sql(db, op)
        assert sql in _step_five_sql_after
Exemple #14
0
def test_step_three_drop_column(app):
    db = DAL(app, auto_migrate=False)
    db.define_models(StepThreeThingTwo)
    ops = _make_ops(db)
    db2 = DAL(app, auto_migrate=False)
    db2.define_models(StepThreeThingThree)
    ops2 = _make_ops(db2, ops)
    op = ops2.ops[0]
    sql = _make_sql(db, op)
    assert sql == _step_three_sql_drop
Exemple #15
0
def test_step_three_alter_table(app):
    db = DAL(app, auto_migrate=False)
    db.define_models(StepFourThing)
    ops = _make_ops(db)
    db2 = DAL(app, auto_migrate=False)
    db2.define_models(StepFourThingEdit)
    ops2 = _make_ops(db2, ops)
    sql = []
    for op in ops2.ops:
        sql.append(_make_sql(db2, op))
    assert "\n".join(sql) == _step_four_sql
Exemple #16
0
def test_step_one_drop_table(app):
    db = DAL(app, auto_migrate=False)
    db.define_models(StepOneThing)
    ops = _make_ops(db)
    db2 = DAL(app, auto_migrate=False)
    db2.define_models()
    ops2 = _make_ops(db2, ops)
    diffs = ops2.as_diffs()
    assert len(diffs) == 1 and diffs[0][0] == "remove_table"
    op = ops2.ops[0]
    sql = _make_sql(db2, op)
    assert sql == _step_one_sql_drop
Exemple #17
0
def test_step_five_indexes(app):
    db = DAL(app, auto_migrate=False)
    db.define_models(StepFiveThing)
    ops = _make_ops(db)
    index_ops = ops.ops[1:]
    for op in index_ops:
        sql = _make_sql(db, op)
        assert sql in _step_five_sql_before
    db2 = DAL(app, auto_migrate=False)
    db2.define_models(StepFiveThingEdit)
    ops2 = _make_ops(db2, ops)
    for op in ops2.ops:
        sql = _make_sql(db, op)
        assert sql in _step_five_sql_after
Exemple #18
0
    message = Field()

    @rowmethod('serialize')
    def _serialize(self, row):
        return {'id': row.id, 'message': row.message}


app.config.db.adapter = 'postgres:psycopg2' \
    if not _is_pypy else 'postgres:pg8000'
app.config.db.host = DBHOSTNAME
app.config.db.user = '******'
app.config.db.password = '******'
app.config.db.database = 'hello_world'
app.config.db.pool_size = 100

db = DAL(app, auto_migrate=False)
db.define_models(World, Fortune)


@app.route()
@service.json
def json():
    return {'message': 'Hello, World!'}


@app.route("/db", handlers=[db.handler])
@service.json
def get_random_world():
    return World.get(randint(1, 10000)).serialize()

Exemple #19
0
def test_step_one_no_diff_in_migration(app):
    db = DAL(app, auto_migrate=False)
    db.define_models(StepOneThing)
    ops = _make_ops(db)
    ops2 = _make_ops(db, ops)
    assert len(ops2.as_diffs()) == 0
Exemple #20
0
class Comment(Model):
    belongs_to('user', 'post')

    text = Field('text')
    date = Field('datetime')

    default_values = {
        'user': lambda: session.auth.user.id,
        'date': lambda: request.now
    }
    validation = {'text': {'presence': True}}
    form_rw = {'user': False, 'post': False, 'date': False}


#: init db and auth
db = DAL(app)
auth = Auth(app, db, usermodel=User)
db.define_models(Post, Comment)


#: setup helping function
def setup_admin():
    # create the user
    user = User.create(email="*****@*****.**",
                       first_name="Walter",
                       last_name="Bishop",
                       password="******")
    # create an admin group
    admins = auth.add_group("admin")
    # add user to admins group
    auth.add_membership(admins, user.id)
Exemple #21
0
def test_step_one_no_diff_in_migration(app):
    db = DAL(app, auto_migrate=False)
    db.define_models(StepOneThing)
    ops = _make_ops(db)
    ops2 = _make_ops(db, ops)
    assert len(ops2.as_diffs()) == 0
Exemple #22
0
def db():
    app = App(__name__)
    db = DAL(app, config=sdict(uri='sqlite:memory'))
    auth = Auth(app, db, usermodel=User)
    db.define_models(Thing)
    return db
Exemple #23
0
    default_values = {
        'user': lambda: session.auth.user.id,
        'date': lambda: request.now
    }
    validation = {
        'text': {'presence': True}
    }
    form_rw = {
        'user': False,
        'post': False,
        'date': False
    }

#: init db and auth
db = DAL(app)
auth = Auth(app, db, usermodel=User)
db.define_models(Post, Comment)


#: setup helping function
def setup_admin():
    # create the user
    user = db.User.validate_and_insert(
        email="*****@*****.**",
        first_name="Walter",
        last_name="Bishop",
        password="******"
    )
    # create an admin group
    admins = auth.add_group("admin")
Exemple #24
0
              default=lambda: session.auth.user.id),
        Field("post", "reference posts"),
        Field("text", "text"),
        Field("date", "datetime", default=lambda: request.now)
    ]
    visibility = {
        "author": (False, False),
        "post": (False, False),
        "date": (False, False)
    }
    validators = {
        "text": isntEmpty()
    }

#: init db and auth
db = DAL(app)
auth = Auth(app, db, usermodel=User)
db.define_models([Post, Comment])


#: setup helping function
def setup():
    # create the user
    user = db.User.validate_and_insert(
        email="*****@*****.**",
        first_name="Walter",
        last_name="Bishop",
        password="******"
    )
    # create an admin group
    admins = auth.add_group("admin")
Exemple #25
0
def db():
    app = App(__name__)
    db = DAL(app)
    db.define_models([TModel])
    return db
Exemple #26
0
def db():
    app = App(__name__)
    db = DAL(app, config=sdict(uri='sqlite:memory'))
    auth = Auth(app, db, usermodel=User)
    db.define_models(Thing)
    return db
Exemple #27
0
def db():
    app = App(__name__)
    db = DAL(app)
    db.define_models([TModel])
    return db