summaryrefslogtreecommitdiff
path: root/test/testlib/tables.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/testlib/tables.py')
-rw-r--r--test/testlib/tables.py44
1 files changed, 23 insertions, 21 deletions
diff --git a/test/testlib/tables.py b/test/testlib/tables.py
index 69c84c5b3..4ec92cc8b 100644
--- a/test/testlib/tables.py
+++ b/test/testlib/tables.py
@@ -1,10 +1,13 @@
-import testbase
+# can't be imported until the path is setup; be sure to configure
+# first if covering.
from sqlalchemy import *
+from testlib import testing
from testlib.schema import Table, Column
-# these are older test fixtures, used primarily by test/orm/mapper.py and test/orm/unitofwork.py.
-# newer unit tests make usage of test/orm/fixtures.py.
+# these are older test fixtures, used primarily by test/orm/mapper.py and
+# test/orm/unitofwork.py. newer unit tests make usage of
+# test/orm/fixtures.py.
metadata = MetaData()
@@ -39,7 +42,7 @@ keywords = Table('keywords', metadata,
Column('name', VARCHAR(50)),
)
-userkeywords = Table('userkeywords', metadata,
+userkeywords = Table('userkeywords', metadata,
Column('user_id', INT, ForeignKey("users")),
Column('keyword_id', INT, ForeignKey("keywords")),
)
@@ -52,18 +55,18 @@ itemkeywords = Table('itemkeywords', metadata,
def create():
if not metadata.bind:
- metadata.bind = testbase.db
+ metadata.bind = testing.db
metadata.create_all()
def drop():
if not metadata.bind:
- metadata.bind = testbase.db
+ metadata.bind = testing.db
metadata.drop_all()
def delete():
for t in metadata.table_iterator(reverse=True):
t.delete().execute()
def user_data():
if not metadata.bind:
- metadata.bind = testbase.db
+ metadata.bind = testing.db
users.insert().execute(
dict(user_id = 7, user_name = 'jack'),
dict(user_id = 8, user_name = 'ed'),
@@ -71,10 +74,10 @@ def user_data():
)
def delete_user_data():
users.delete().execute()
-
+
def data():
delete()
-
+
# with SQLITE, the OID column of a table defaults to the primary key, if it has one.
# so to database-neutrally get rows back in "insert order" based on OID, we
# have to also put the primary keys in order for the purpose of these tests
@@ -112,10 +115,10 @@ def data():
dict(keyword_id=6, name='round'),
dict(keyword_id=7, name='square')
)
-
+
# this many-to-many table has the keywords inserted
# in primary key order, to appease the unit tests.
- # this is because postgres, oracle, and sqlite all support
+ # this is because postgres, oracle, and sqlite all support
# true insert-order row id, but of course our pal MySQL does not,
# so the best it can do is order by, well something, so there you go.
itemkeywords.insert().execute(
@@ -133,7 +136,7 @@ def data():
class BaseObject(object):
def __repr__(self):
return "%s(%s)" % (self.__class__.__name__, ",".join("%s=%s" % (k, repr(v)) for k, v in self.__dict__.iteritems() if k[0] != '_'))
-
+
class User(BaseObject):
def __init__(self):
self.user_id = None
@@ -147,7 +150,7 @@ class Order(BaseObject):
class Item(BaseObject):
pass
-
+
class Keyword(BaseObject):
pass
@@ -159,33 +162,33 @@ user_address_result = [
{'user_id' : 9, 'addresses' : (Address, [])}
]
-user_address_orders_result = [{'user_id' : 7,
+user_address_orders_result = [{'user_id' : 7,
'addresses' : (Address, [{'address_id' : 1}]),
'orders' : (Order, [{'order_id' : 1}, {'order_id' : 3},{'order_id' : 5},])
},
- {'user_id' : 8,
+ {'user_id' : 8,
'addresses' : (Address, [{'address_id' : 2}, {'address_id' : 3}, {'address_id' : 4}]),
'orders' : (Order, [])
},
- {'user_id' : 9,
+ {'user_id' : 9,
'addresses' : (Address, []),
'orders' : (Order, [{'order_id' : 2},{'order_id' : 4}])
}]
user_all_result = [
-{'user_id' : 7,
+{'user_id' : 7,
'addresses' : (Address, [{'address_id' : 1}]),
'orders' : (Order, [
- {'order_id' : 1, 'items': (Item, [])},
+ {'order_id' : 1, 'items': (Item, [])},
{'order_id' : 3, 'items': (Item, [{'item_id':3, 'item_name':'item 3'}, {'item_id':4, 'item_name':'item 4'}, {'item_id':5, 'item_name':'item 5'}])},
{'order_id' : 5, 'items': (Item, [])},
])
},
-{'user_id' : 8,
+{'user_id' : 8,
'addresses' : (Address, [{'address_id' : 2}, {'address_id' : 3}, {'address_id' : 4}]),
'orders' : (Order, [])
},
-{'user_id' : 9,
+{'user_id' : 9,
'addresses' : (Address, []),
'orders' : (Order, [
{'order_id' : 2, 'items': (Item, [{'item_id':1, 'item_name':'item 1'}, {'item_id':2, 'item_name':'item 2'}])},
@@ -215,4 +218,3 @@ order_result = [
{'order_id' : 4, 'items':(Item, [])},
{'order_id' : 5, 'items':(Item, [])},
]
-