summaryrefslogtreecommitdiff
path: root/test/sql/test_unicode.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2013-05-04 14:59:26 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2013-05-04 14:59:26 -0400
commit2a99b770ddf144c279ad8b42ad8593b3439cd2de (patch)
tree669f31c9921dc568fe94d73f31cdc5574062fcb6 /test/sql/test_unicode.py
parent6f82c320b8834761fa9606119a4c2cbc6c3312f1 (diff)
downloadsqlalchemy-2a99b770ddf144c279ad8b42ad8593b3439cd2de.tar.gz
- unicode literals need to just be handled differently if they have utf-8
encoded in them vs. unicode escaping. not worth figuring out how to combine these right now
Diffstat (limited to 'test/sql/test_unicode.py')
-rw-r--r--test/sql/test_unicode.py81
1 files changed, 41 insertions, 40 deletions
diff --git a/test/sql/test_unicode.py b/test/sql/test_unicode.py
index 2ab081dad..ffcef903f 100644
--- a/test/sql/test_unicode.py
+++ b/test/sql/test_unicode.py
@@ -7,6 +7,7 @@ from sqlalchemy import testing
from sqlalchemy.testing.engines import utf8_engine
from sqlalchemy.sql import column
from sqlalchemy.testing.schema import Table, Column
+from sqlalchemy.util import u, ue
class UnicodeSchemaTest(fixtures.TestBase):
__requires__ = ('unicode_ddl',)
@@ -18,14 +19,14 @@ class UnicodeSchemaTest(fixtures.TestBase):
unicode_bind = utf8_engine()
metadata = MetaData(unicode_bind)
- t1 = Table('unitable1', metadata,
- Column('méil', Integer, primary_key=True),
- Column('\u6e2c\u8a66', Integer),
+ t1 = Table(u('unitable1'), metadata,
+ Column(u('méil'), Integer, primary_key=True),
+ Column(ue('\u6e2c\u8a66'), Integer),
test_needs_fk=True,
)
- t2 = Table('Unitéble2', metadata,
- Column('méil', Integer, primary_key=True, key="a"),
- Column('\u6e2c\u8a66', Integer, ForeignKey('unitable1.méil'),
+ t2 = Table(u('Unitéble2'), metadata,
+ Column(u('méil'), Integer, primary_key=True, key="a"),
+ Column(ue('\u6e2c\u8a66'), Integer, ForeignKey(u('unitable1.méil')),
key="b"
),
test_needs_fk=True,
@@ -33,27 +34,27 @@ class UnicodeSchemaTest(fixtures.TestBase):
# Few DBs support Unicode foreign keys
if testing.against('sqlite'):
- t3 = Table('\u6e2c\u8a66', metadata,
- Column('\u6e2c\u8a66_id', Integer, primary_key=True,
+ t3 = Table(ue('\u6e2c\u8a66'), metadata,
+ Column(ue('\u6e2c\u8a66_id'), Integer, primary_key=True,
autoincrement=False),
- Column('unitable1_\u6e2c\u8a66', Integer,
- ForeignKey('unitable1.\u6e2c\u8a66')
+ Column(ue('unitable1_\u6e2c\u8a66'), Integer,
+ ForeignKey(ue('unitable1.\u6e2c\u8a66'))
),
- Column('Unitéble2_b', Integer,
- ForeignKey('Unitéble2.b')
+ Column(u('Unitéble2_b'), Integer,
+ ForeignKey(u('Unitéble2.b'))
),
- Column('\u6e2c\u8a66_self', Integer,
- ForeignKey('\u6e2c\u8a66.\u6e2c\u8a66_id')
+ Column(ue('\u6e2c\u8a66_self'), Integer,
+ ForeignKey(ue('\u6e2c\u8a66.\u6e2c\u8a66_id'))
),
test_needs_fk=True,
)
else:
- t3 = Table('\u6e2c\u8a66', metadata,
- Column('\u6e2c\u8a66_id', Integer, primary_key=True,
+ t3 = Table(ue('\u6e2c\u8a66'), metadata,
+ Column(ue('\u6e2c\u8a66_id'), Integer, primary_key=True,
autoincrement=False),
- Column('unitable1_\u6e2c\u8a66', Integer),
- Column('Unitéble2_b', Integer),
- Column('\u6e2c\u8a66_self', Integer),
+ Column(ue('unitable1_\u6e2c\u8a66'), Integer),
+ Column(u('Unitéble2_b'), Integer),
+ Column(ue('\u6e2c\u8a66_self'), Integer),
test_needs_fk=True,
)
metadata.create_all()
@@ -72,42 +73,42 @@ class UnicodeSchemaTest(fixtures.TestBase):
del unicode_bind
def test_insert(self):
- t1.insert().execute({'méil':1, '\u6e2c\u8a66':5})
- t2.insert().execute({'a':1, 'b':1})
- t3.insert().execute({'\u6e2c\u8a66_id': 1,
- 'unitable1_\u6e2c\u8a66': 5,
- 'Unitéble2_b': 1,
- '\u6e2c\u8a66_self': 1})
+ t1.insert().execute({u('méil'):1, ue('\u6e2c\u8a66'):5})
+ t2.insert().execute({u('a'):1, u('b'):1})
+ t3.insert().execute({ue('\u6e2c\u8a66_id'): 1,
+ ue('unitable1_\u6e2c\u8a66'): 5,
+ u('Unitéble2_b'): 1,
+ ue('\u6e2c\u8a66_self'): 1})
assert t1.select().execute().fetchall() == [(1, 5)]
assert t2.select().execute().fetchall() == [(1, 1)]
assert t3.select().execute().fetchall() == [(1, 5, 1, 1)]
def test_reflect(self):
- t1.insert().execute({'méil':2, '\u6e2c\u8a66':7})
- t2.insert().execute({'a':2, 'b':2})
- t3.insert().execute({'\u6e2c\u8a66_id': 2,
- 'unitable1_\u6e2c\u8a66': 7,
- 'Unitéble2_b': 2,
- '\u6e2c\u8a66_self': 2})
+ t1.insert().execute({u('méil'):2, ue('\u6e2c\u8a66'):7})
+ t2.insert().execute({u('a'):2, u('b'):2})
+ t3.insert().execute({ue('\u6e2c\u8a66_id'): 2,
+ ue('unitable1_\u6e2c\u8a66'): 7,
+ u('Unitéble2_b'): 2,
+ ue('\u6e2c\u8a66_self'): 2})
meta = MetaData(unicode_bind)
tt1 = Table(t1.name, meta, autoload=True)
tt2 = Table(t2.name, meta, autoload=True)
tt3 = Table(t3.name, meta, autoload=True)
- tt1.insert().execute({'méil':1, '\u6e2c\u8a66':5})
- tt2.insert().execute({'méil':1, '\u6e2c\u8a66':1})
- tt3.insert().execute({'\u6e2c\u8a66_id': 1,
- 'unitable1_\u6e2c\u8a66': 5,
- 'Unitéble2_b': 1,
- '\u6e2c\u8a66_self': 1})
+ tt1.insert().execute({u('méil'):1, ue('\u6e2c\u8a66'):5})
+ tt2.insert().execute({u('méil'):1, ue('\u6e2c\u8a66'):1})
+ tt3.insert().execute({ue('\u6e2c\u8a66_id'): 1,
+ ue('unitable1_\u6e2c\u8a66'): 5,
+ u('Unitéble2_b'): 1,
+ ue('\u6e2c\u8a66_self'): 1})
- self.assert_(tt1.select(order_by=desc('méil')).execute().fetchall() ==
+ self.assert_(tt1.select(order_by=desc(u('méil'))).execute().fetchall() ==
[(2, 7), (1, 5)])
- self.assert_(tt2.select(order_by=desc('méil')).execute().fetchall() ==
+ self.assert_(tt2.select(order_by=desc(u('méil'))).execute().fetchall() ==
[(2, 2), (1, 1)])
- self.assert_(tt3.select(order_by=desc('\u6e2c\u8a66_id')).
+ self.assert_(tt3.select(order_by=desc(ue('\u6e2c\u8a66_id'))).
execute().fetchall() ==
[(2, 7, 2, 2), (1, 5, 1, 1)])
meta.drop_all()