summaryrefslogtreecommitdiff
path: root/test/sql/constraints.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/sql/constraints.py')
-rw-r--r--test/sql/constraints.py58
1 files changed, 29 insertions, 29 deletions
diff --git a/test/sql/constraints.py b/test/sql/constraints.py
index c5320ada3..142f1ffba 100644
--- a/test/sql/constraints.py
+++ b/test/sql/constraints.py
@@ -1,19 +1,19 @@
-import testbase
+import testenv; testenv.configure_for_tests()
from sqlalchemy import *
from sqlalchemy import exceptions
from testlib import *
class ConstraintTest(AssertMixin):
-
+
def setUp(self):
global metadata
- metadata = MetaData(testbase.db)
-
+ metadata = MetaData(testing.db)
+
def tearDown(self):
metadata.drop_all()
-
+
def test_constraint(self):
- employees = Table('employees', metadata,
+ employees = Table('employees', metadata,
Column('id', Integer),
Column('soc', String(40)),
Column('name', String(30)),
@@ -30,7 +30,7 @@ class ConstraintTest(AssertMixin):
metadata.create_all()
def test_circular_constraint(self):
- a = Table("a", metadata,
+ a = Table("a", metadata,
Column('id', Integer, primary_key=True),
Column('bid', Integer),
ForeignKeyConstraint(["bid"], ["b.id"], name="afk")
@@ -43,7 +43,7 @@ class ConstraintTest(AssertMixin):
metadata.create_all()
def test_circular_constraint_2(self):
- a = Table("a", metadata,
+ a = Table("a", metadata,
Column('id', Integer, primary_key=True),
Column('bid', Integer, ForeignKey("b.id")),
)
@@ -52,15 +52,15 @@ class ConstraintTest(AssertMixin):
Column("aid", Integer, ForeignKey("a.id", use_alter=True, name="bfk")),
)
metadata.create_all()
-
+
@testing.unsupported('mysql')
def test_check_constraint(self):
- foo = Table('foo', metadata,
+ foo = Table('foo', metadata,
Column('id', Integer, primary_key=True),
Column('x', Integer),
Column('y', Integer),
CheckConstraint('x>y'))
- bar = Table('bar', metadata,
+ bar = Table('bar', metadata,
Column('id', Integer, primary_key=True),
Column('x', Integer, CheckConstraint('x>7')),
Column('z', Integer)
@@ -80,7 +80,7 @@ class ConstraintTest(AssertMixin):
assert False
except exceptions.SQLError:
assert True
-
+
def test_unique_constraint(self):
foo = Table('foo', metadata,
Column('id', Integer, primary_key=True),
@@ -106,7 +106,7 @@ class ConstraintTest(AssertMixin):
assert False
except exceptions.SQLError:
assert True
-
+
def test_index_create(self):
employees = Table('employees', metadata,
Column('id', Integer, primary_key=True),
@@ -114,14 +114,14 @@ class ConstraintTest(AssertMixin):
Column('last_name', String(30)),
Column('email_address', String(30)))
employees.create()
-
+
i = Index('employee_name_index',
employees.c.last_name, employees.c.first_name)
i.create()
assert i in employees.indexes
-
+
i2 = Index('employee_email_index',
- employees.c.email_address, unique=True)
+ employees.c.email_address, unique=True)
i2.create()
assert i2 in employees.indexes
@@ -134,13 +134,13 @@ class ConstraintTest(AssertMixin):
Column('emailAddress', String(30)))
employees.create()
-
+
i = Index('employeeNameIndex',
employees.c.lastName, employees.c.firstName)
i.create()
-
+
i = Index('employeeEmailIndex',
- employees.c.emailAddress, unique=True)
+ employees.c.emailAddress, unique=True)
i.create()
# Check that the table is useable. This is mostly for pg,
@@ -163,7 +163,7 @@ class ConstraintTest(AssertMixin):
Index('sport_announcer', events.c.sport, events.c.announcer, unique=True)
Index('idx_winners', events.c.winner)
-
+
index_names = [ ix.name for ix in events.indexes ]
assert 'ix_events_name' in index_names
assert 'ix_events_location' in index_names
@@ -172,7 +172,7 @@ class ConstraintTest(AssertMixin):
assert len(index_names) == 4
capt = []
- connection = testbase.db.connect()
+ connection = testing.db.connect()
# TODO: hacky, put a real connection proxy in
ex = connection._Connection__execute_raw
def proxy(context):
@@ -180,26 +180,26 @@ class ConstraintTest(AssertMixin):
capt.append(repr(context.parameters))
ex(context)
connection._Connection__execute_raw = proxy
- schemagen = testbase.db.dialect.schemagenerator(testbase.db.dialect, connection)
+ schemagen = testing.db.dialect.schemagenerator(testing.db.dialect, connection)
schemagen.traverse(events)
-
+
assert capt[0].strip().startswith('CREATE TABLE events')
-
+
s = set([capt[x].strip() for x in [2,4,6,8]])
-
+
assert s == set([
'CREATE UNIQUE INDEX ix_events_name ON events (name)',
'CREATE INDEX ix_events_location ON events (location)',
'CREATE UNIQUE INDEX sport_announcer ON events (sport, announcer)',
'CREATE INDEX idx_winners ON events (winner)'
])
-
+
# verify that the table is functional
events.insert().execute(id=1, name='hockey finals', location='rink',
sport='hockey', announcer='some canadian',
winner='sweden')
ss = events.select().execute().fetchall()
-
-if __name__ == "__main__":
- testbase.main()
+
+if __name__ == "__main__":
+ testenv.main()