From: Robert Leftwich Date: Sun, 29 Jan 2006 04:04:17 +0000 (+0000) Subject: Added __len__ to RowProxy to allow len(r) and test for same. X-Git-Tag: rel_0_1_0~93 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9db98d2deeec3d77a9ba3447bdd46ef7067f257e;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git Added __len__ to RowProxy to allow len(r) and test for same. --- diff --git a/lib/sqlalchemy/engine.py b/lib/sqlalchemy/engine.py index 3af02616b3..3a3af2ce93 100644 --- a/lib/sqlalchemy/engine.py +++ b/lib/sqlalchemy/engine.py @@ -716,6 +716,8 @@ class RowProxy: return [v for _, v in self.iteritems()] def items(self): return list(self.iteritems()) + def __len__(self): + return len(self.keys()) diff --git a/test/query.py b/test/query.py index ceb50ebd00..cae0c30693 100644 --- a/test/query.py +++ b/test/query.py @@ -116,6 +116,7 @@ class QueryTest(PersistTest): self.assertEqual(r.values(), [1, 'foo']) self.assertEqual(zip(r.itervalues(), r.iterkeys()), zip(r.values(), r.keys())) self.assertEqual(repr(r), "{'user_name': u'foo', 'user_id': 1}") + self.assertEqual(len(r), 2) def test_column_accessor_shadow(self): shadowed = Table('test_shadowed', db,