import sys
import types
from testlib import config, sa, testing
+from testlib.engines import drop_all_tables
from testlib.testing import resolve_artifact_names, adict
from testlib.compat import _function_named
if self.run_define_tables == 'each':
self.tables.clear()
- self.metadata.drop_all()
+ drop_all_tables(self.metadata)
self.metadata.clear()
self.define_tables(self.metadata)
self.metadata.create_all()
for cls in self.classes.values():
self.unregister_class(cls)
ORMTest.tearDownAll(self)
- self.metadata.drop_all()
+
+ drop_all_tables(self.metadata)
self.metadata.bind = None
def define_tables(self, metadata):
import testenv; testenv.configure_for_tests()
from testlib import sa, testing
-from testlib.sa import MetaData, Table, Column, Integer, String, ForeignKey, func
-from testlib.sa.engine import default
+from testlib.sa import MetaData, Table, Column, Integer, String, ForeignKey, func, engine, util
+default = engine.default
from testlib.sa.orm import mapper, relation, backref, create_session, class_mapper, compile_mappers, reconstructor, validates, aliased
from testlib.sa.orm import defer, deferred, synonym, attributes, column_property, composite, relation, dynamic_loader, comparable_property
from testlib.testing import eq_, AssertsCompiledSQL
@testing.resolve_artifact_names
def test_group(self):
"""Deferred load with a group"""
- mapper(Order, orders, properties={
- 'userident': deferred(orders.c.user_id, group='primary'),
- 'addrident': deferred(orders.c.address_id, group='primary'),
- 'description': deferred(orders.c.description, group='primary'),
- 'opened': deferred(orders.c.isopen, group='primary')
- })
+ mapper(Order, orders, properties=util.OrderedDict([
+ ('userident', deferred(orders.c.user_id, group='primary')),
+ ('addrident', deferred(orders.c.address_id, group='primary')),
+ ('description', deferred(orders.c.description, group='primary')),
+ ('opened', deferred(orders.c.isopen, group='primary'))
+ ]))
sess = create_session()
q = sess.query(Order).order_by(Order.id)
@testing.resolve_artifact_names
def test_undefer_group(self):
- mapper(Order, orders, properties={
- 'userident':deferred(orders.c.user_id, group='primary'),
- 'description':deferred(orders.c.description, group='primary'),
- 'opened':deferred(orders.c.isopen, group='primary')})
+ mapper(Order, orders, properties=util.OrderedDict([
+ ('userident',deferred(orders.c.user_id, group='primary')),
+ ('description',deferred(orders.c.description, group='primary')),
+ ('opened',deferred(orders.c.isopen, group='primary'))
+ ]
+ ))
sess = create_session()
q = sess.query(Order).order_by(Order.id)
mapper, M, maps, properties={
reserved: maps.c.state})
-
-
if __name__ == "__main__":
testenv.main()
pass
s = users.select(users.c.id!=12).alias('users')
m = mapper(SomeUser, s)
- print s.primary_key
- print m.primary_key
assert s.primary_key == m.primary_key
- row = s.select(use_labels=True).execute().fetchone()
- print row[s.primary_key[0]]
-
sess = create_session()
assert sess.query(SomeUser).get(7).name == 'jack'
orders = sess.query(Order).filter(Order.id.in_([2, 3, 4]))
self.assertEquals(orders.values(func.sum(Order.user_id * Order.address_id)).next(), (79,))
self.assertEquals(orders.value(func.sum(Order.user_id * Order.address_id)), 79)
-
+
def test_apply(self):
sess = create_session()
assert sess.query(func.sum(Order.user_id * Order.address_id)).filter(Order.id.in_([2, 3, 4])).one() == (79,)