From: Mike Bayer Date: Mon, 19 Nov 2007 04:08:48 +0000 (+0000) Subject: add a polymorphic get() test X-Git-Tag: rel_0_4_2~157 X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=6bb629d76b5c935bc82546fcbc80b771155936f5;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git add a polymorphic get() test --- diff --git a/VERSION b/VERSION index 267577d47e..2b7c5ae018 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.4.1 +0.4.2 diff --git a/test/orm/inheritance/basic.py b/test/orm/inheritance/basic.py index 32420300f2..68d7956cc5 100644 --- a/test/orm/inheritance/basic.py +++ b/test/orm/inheritance/basic.py @@ -121,7 +121,7 @@ class GetTest(ORMTest): assert sess.query(Bar).get(b.id) == b assert sess.query(Bar).get(bl.id) == bl assert sess.query(Blub).get(bl.id) == bl - + self.assert_sql_count(testbase.db, go, 0) else: # this is testing the 'wrong' behavior of using get() @@ -145,6 +145,7 @@ class GetTest(ORMTest): assert sess.query(Blub).get(bl.id) == bl self.assert_sql_count(testbase.db, go, 3) + test_get.__name__ = name return test_get diff --git a/test/orm/inheritance/polymorph.py b/test/orm/inheritance/polymorph.py index f067b330bd..e45a11a542 100644 --- a/test/orm/inheritance/polymorph.py +++ b/test/orm/inheritance/polymorph.py @@ -254,6 +254,8 @@ def generate_round_trip_test(include_base=False, lazy_relation=True, redefine_co c = Company(name='company1') c.employees.append(Manager(status='AAB', manager_name='manager1', **{person_attribute_name:'pointy haired boss'})) c.employees.append(Engineer(status='BBA', engineer_name='engineer1', primary_language='java', **{person_attribute_name:'dilbert'})) + dilbert = c.employees[-1] + if include_base: c.employees.append(Person(status='HHH', **{person_attribute_name:'joesmith'})) c.employees.append(Engineer(status='CGG', engineer_name='engineer2', primary_language='python', **{person_attribute_name:'wally'})) @@ -262,6 +264,11 @@ def generate_round_trip_test(include_base=False, lazy_relation=True, redefine_co print session.new session.flush() session.clear() + + dilbert = session.query(Person).get(dilbert.person_id) + assert getattr(dilbert, person_attribute_name) == 'dilbert' + session.clear() + id = c.company_id def go(): c = session.query(Company).get(id)