From: Mike Bayer Date: Mon, 20 Jan 2014 20:36:45 +0000 (-0500) Subject: - ensure ordering is fully maintained, [ticket:2914] X-Git-Tag: rel_0_9_2~44 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=84b03137eb16b5e2a34e69f73b3a88069026c650;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git - ensure ordering is fully maintained, [ticket:2914] --- diff --git a/test/orm/_fixtures.py b/test/orm/_fixtures.py index c218336196..0f6e522d43 100644 --- a/test/orm/_fixtures.py +++ b/test/orm/_fixtures.py @@ -64,10 +64,13 @@ class FixtureTest(fixtures.MappedTest): cls.classes.CompositePk, cls.tables.nodes, \ cls.classes.Order, cls.tables.orders, cls.tables.addresses - mapper(User, users, properties={ - 'addresses':relationship(Address, backref='user', order_by=addresses.c.id), - 'orders':relationship(Order, backref='user', order_by=orders.c.id), # o2m, m2o - }) + # use OrderedDict on this one to support some tests that + # assert the order of attributes (e.g. orm/test_inspect) + mapper(User, users, properties=util.OrderedDict( + [('addresses', relationship(Address, backref='user', order_by=addresses.c.id)), + ('orders', relationship(Order, backref='user', order_by=orders.c.id)), # o2m, m2o + ] + )) mapper(Address, addresses, properties={ 'dingaling':relationship(Dingaling, uselist=False, backref="address") #o2o }) diff --git a/test/orm/test_inspect.py b/test/orm/test_inspect.py index ed8ab32e9d..5f54579438 100644 --- a/test/orm/test_inspect.py +++ b/test/orm/test_inspect.py @@ -130,8 +130,8 @@ class TestORMInspection(_fixtures.FixtureTest): User = self.classes.User insp = inspect(User) eq_( - set(insp.attrs.keys()), - set(['addresses', 'orders', 'id', 'name', 'name_syn']) + list(insp.attrs.keys()), + ['addresses', 'orders', 'id', 'name', 'name_syn'] ) def test_col_filter(self):