diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2014-08-28 20:06:12 -0400 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2014-08-28 20:06:49 -0400 |
| commit | c192e447f3a5e8bfaaa46097eb4d6179f056361c (patch) | |
| tree | 4c834538728c9fa22f1c9c1cd065d2e2bb44f930 /test/orm | |
| parent | fa5522547150687c9b3cd41d28df08ab0512b5b2 (diff) | |
| download | sqlalchemy-c192e447f3a5e8bfaaa46097eb4d6179f056361c.tar.gz | |
- major refactoring/inlining to loader.instances(), though not really
any speed improvements :(. code is in a much better place to be run into
C, however
- The ``proc()`` callable passed to the ``create_row_processor()``
method of custom :class:`.Bundle` classes now accepts only a single
"row" argument.
- Deprecated event hooks removed: ``populate_instance``,
``create_instance``, ``translate_row``, ``append_result``
- the getter() idea is somewhat restored; see ref #3175
Diffstat (limited to 'test/orm')
| -rw-r--r-- | test/orm/test_bundle.py | 6 | ||||
| -rw-r--r-- | test/orm/test_events.py | 97 |
2 files changed, 19 insertions, 84 deletions
diff --git a/test/orm/test_bundle.py b/test/orm/test_bundle.py index 29b8e9382..a08221e26 100644 --- a/test/orm/test_bundle.py +++ b/test/orm/test_bundle.py @@ -79,10 +79,10 @@ class BundleTest(fixtures.MappedTest, AssertsCompiledSQL): class MyBundle(Bundle): def create_row_processor(self, query, procs, labels): - def proc(row, result): + def proc(row): return dict( - zip(labels, (proc(row, result) for proc in procs)) - ) + zip(labels, (proc(row) for proc in procs)) + ) return proc b1 = MyBundle('b1', Data.d1, Data.d2) diff --git a/test/orm/test_events.py b/test/orm/test_events.py index f7667b9f1..068d73b07 100644 --- a/test/orm/test_events.py +++ b/test/orm/test_events.py @@ -85,10 +85,6 @@ class MapperEventsTest(_RemoveListeners, _fixtures.FixtureTest): for meth in [ 'init', 'init_failure', - 'translate_row', - 'create_instance', - 'append_result', - 'populate_instance', 'load', 'refresh', 'expire', @@ -131,10 +127,9 @@ class MapperEventsTest(_RemoveListeners, _fixtures.FixtureTest): sess.flush() eq_(canary, ['init', 'before_insert', - 'after_insert', 'expire', 'translate_row', - 'populate_instance', 'refresh', - 'append_result', 'translate_row', 'create_instance', - 'populate_instance', 'load', 'append_result', + 'after_insert', 'expire', + 'refresh', + 'load', 'before_update', 'after_update', 'before_delete', 'after_delete']) @@ -240,16 +235,13 @@ class MapperEventsTest(_RemoveListeners, _fixtures.FixtureTest): sess.delete(am) sess.flush() eq_(canary1, ['init', 'before_insert', 'after_insert', - 'translate_row', 'populate_instance','refresh', - 'append_result', 'translate_row', 'create_instance' - , 'populate_instance', 'load', 'append_result', + 'refresh', 'load', 'before_update', 'after_update', 'before_delete', 'after_delete']) eq_(canary2, []) eq_(canary3, ['init', 'before_insert', 'after_insert', - 'translate_row', 'populate_instance','refresh', - 'append_result', 'translate_row', 'create_instance' - , 'populate_instance', 'load', 'append_result', + 'refresh', + 'load', 'before_update', 'after_update', 'before_delete', 'after_delete']) @@ -282,16 +274,12 @@ class MapperEventsTest(_RemoveListeners, _fixtures.FixtureTest): sess.delete(am) sess.flush() eq_(canary1, ['init', 'before_insert', 'after_insert', - 'translate_row', 'populate_instance','refresh', - 'append_result', 'translate_row', 'create_instance' - , 'populate_instance', 'load', 'append_result', + 'refresh', 'load', 'before_update', 'after_update', 'before_delete', 'after_delete']) eq_(canary2, []) eq_(canary3, ['init', 'before_insert', 'after_insert', - 'translate_row', 'populate_instance','refresh', - 'append_result', 'translate_row', 'create_instance' - , 'populate_instance', 'load', 'append_result', + 'refresh', 'load', 'before_update', 'after_update', 'before_delete', 'after_delete']) @@ -375,25 +363,6 @@ class MapperEventsTest(_RemoveListeners, _fixtures.FixtureTest): eq_(m1.mock_calls, [call()]) eq_(m2.mock_calls, [call()]) - def test_retval(self): - User, users = self.classes.User, self.tables.users - - def create_instance(mapper, context, row, class_): - u = User.__new__(User) - u.foo = True - return u - - mapper(User, users) - event.listen(User, 'create_instance', create_instance, retval=True) - sess = create_session() - u1 = User() - u1.name = 'ed' - sess.add(u1) - sess.flush() - sess.expunge_all() - u = sess.query(User).first() - assert u.foo - def test_instrument_event(self): Address, addresses, users, User = (self.classes.Address, self.tables.addresses, @@ -1515,26 +1484,10 @@ class MapperExtensionTest(_fixtures.FixtureTest): methods.append('init_failed') return sa.orm.EXT_CONTINUE - def translate_row(self, mapper, context, row): - methods.append('translate_row') - return sa.orm.EXT_CONTINUE - - def create_instance(self, mapper, selectcontext, row, class_): - methods.append('create_instance') - return sa.orm.EXT_CONTINUE - def reconstruct_instance(self, mapper, instance): methods.append('reconstruct_instance') return sa.orm.EXT_CONTINUE - def append_result(self, mapper, selectcontext, row, instance, result, **flags): - methods.append('append_result') - return sa.orm.EXT_CONTINUE - - def populate_instance(self, mapper, selectcontext, row, instance, **flags): - methods.append('populate_instance') - return sa.orm.EXT_CONTINUE - def before_insert(self, mapper, connection, instance): methods.append('before_insert') return sa.orm.EXT_CONTINUE @@ -1582,9 +1535,8 @@ class MapperExtensionTest(_fixtures.FixtureTest): sess.flush() eq_(methods, ['instrument_class', 'init_instance', 'before_insert', - 'after_insert', 'translate_row', 'populate_instance', - 'append_result', 'translate_row', 'create_instance', - 'populate_instance', 'reconstruct_instance', 'append_result', + 'after_insert', + 'reconstruct_instance', 'before_update', 'after_update', 'before_delete', 'after_delete']) def test_inheritance(self): @@ -1614,10 +1566,9 @@ class MapperExtensionTest(_fixtures.FixtureTest): sess.flush() eq_(methods, ['instrument_class', 'instrument_class', 'init_instance', - 'before_insert', 'after_insert', 'translate_row', - 'populate_instance', 'append_result', 'translate_row', - 'create_instance', 'populate_instance', 'reconstruct_instance', - 'append_result', 'before_update', 'after_update', 'before_delete', + 'before_insert', 'after_insert', + 'reconstruct_instance', + 'before_update', 'after_update', 'before_delete', 'after_delete']) def test_before_after_only_collection(self): @@ -1691,27 +1642,11 @@ class MapperExtensionTest(_fixtures.FixtureTest): sess.flush() eq_(methods, ['instrument_class', 'instrument_class', 'init_instance', - 'before_insert', 'after_insert', 'translate_row', - 'populate_instance', 'append_result', 'translate_row', - 'create_instance', 'populate_instance', 'reconstruct_instance', - 'append_result', 'before_update', 'after_update', 'before_delete', + 'before_insert', 'after_insert', + 'reconstruct_instance', + 'before_update', 'after_update', 'before_delete', 'after_delete']) - def test_create_instance(self): - User, users = self.classes.User, self.tables.users - - class CreateUserExt(sa.orm.MapperExtension): - def create_instance(self, mapper, selectcontext, row, class_): - return User.__new__(User) - - mapper(User, users, extension=CreateUserExt()) - sess = create_session() - u1 = User() - u1.name = 'ed' - sess.add(u1) - sess.flush() - sess.expunge_all() - assert sess.query(User).first() def test_unnecessary_methods_not_evented(self): users = self.tables.users |
