summaryrefslogtreecommitdiff
path: root/test/orm/test_mapper.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2012-10-25 20:28:03 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2012-10-25 20:28:03 -0400
commit7f043a9666eecdecc54fe779ffdd50a7d5bb0086 (patch)
tree945a98439e89265422632d20289babbe3079f7b1 /test/orm/test_mapper.py
parent519c705317e801d714bd05a28f8b2786695d81cc (diff)
downloadsqlalchemy-7f043a9666eecdecc54fe779ffdd50a7d5bb0086.tar.gz
- some naming changes on PropComparator, Comparator:
1. all Comparators now have "parent" which is always the parent mapper or AliasedClass instance 2. only RelationshipProperty.Comparator has "mapper" now, which is the target mapper 3. The names "parententity" and "parentmapper" are underscored also improved the message with the "neither comparator nor instruentedattribute...." to include the classname + attribute name
Diffstat (limited to 'test/orm/test_mapper.py')
-rw-r--r--test/orm/test_mapper.py26
1 files changed, 18 insertions, 8 deletions
diff --git a/test/orm/test_mapper.py b/test/orm/test_mapper.py
index f41843455..1d7e0228c 100644
--- a/test/orm/test_mapper.py
+++ b/test/orm/test_mapper.py
@@ -1331,7 +1331,7 @@ class MapperTest(_fixtures.FixtureTest, AssertsCompiledSQL):
assert_raises_message(
AttributeError,
"Neither 'extendedproperty' object nor 'UCComparator' "
- "object has an attribute 'nonexistent'",
+ "object associated with User.uc_name has an attribute 'nonexistent'",
getattr, User.uc_name, 'nonexistent')
# test compile
@@ -1350,8 +1350,8 @@ class MapperTest(_fixtures.FixtureTest, AssertsCompiledSQL):
sess.expunge_all()
q = sess.query(User)
- u2 = q.filter(User.name=='some user name').one()
- u3 = q.filter(User.uc_name=='SOME USER NAME').one()
+ u2 = q.filter(User.name == 'some user name').one()
+ u3 = q.filter(User.uc_name == 'SOME USER NAME').one()
assert u2 is u3
@@ -1365,23 +1365,33 @@ class MapperTest(_fixtures.FixtureTest, AssertsCompiledSQL):
__hash__ = None
def __eq__(self, other):
# lower case comparison
- return func.lower(self.__clause_element__()) == func.lower(other)
+ return func.lower(self.__clause_element__()
+ ) == func.lower(other)
def intersects(self, other):
# non-standard comparator
return self.__clause_element__().op('&=')(other)
mapper(User, users, properties={
- 'name':sa.orm.column_property(users.c.name, comparator_factory=MyComparator)
+ 'name': sa.orm.column_property(users.c.name,
+ comparator_factory=MyComparator)
})
assert_raises_message(
AttributeError,
- "Neither 'InstrumentedAttribute' object nor 'MyComparator' object has an attribute 'nonexistent'",
+ "Neither 'InstrumentedAttribute' object nor "
+ "'MyComparator' object associated with User.name has "
+ "an attribute 'nonexistent'",
getattr, User.name, "nonexistent")
- eq_(str((User.name == 'ed').compile(dialect=sa.engine.default.DefaultDialect())) , "lower(users.name) = lower(:lower_1)")
- eq_(str((User.name.intersects('ed')).compile(dialect=sa.engine.default.DefaultDialect())), "users.name &= :name_1")
+ eq_(
+ str((User.name == 'ed').compile(
+ dialect=sa.engine.default.DefaultDialect())),
+ "lower(users.name) = lower(:lower_1)")
+ eq_(
+ str((User.name.intersects('ed')).compile(
+ dialect=sa.engine.default.DefaultDialect())),
+ "users.name &= :name_1")
def test_reentrant_compile(self):