summaryrefslogtreecommitdiff
path: root/test/orm/query.py
diff options
context:
space:
mode:
authorJason Kirtland <jek@discorporate.us>2008-11-03 00:09:33 +0000
committerJason Kirtland <jek@discorporate.us>2008-11-03 00:09:33 +0000
commit27b48aa7e67938c104483a63ebe4f6bf6c08e6dc (patch)
tree2309553d6dff8cf78e36365a3bd5f470b6d55142 /test/orm/query.py
parent837f71eca5e569323e61e6937e85b9944258f870 (diff)
downloadsqlalchemy-27b48aa7e67938c104483a63ebe4f6bf6c08e6dc.tar.gz
Added tests for Query.scalar(), .value() [ticket:1163]
Diffstat (limited to 'test/orm/query.py')
-rw-r--r--test/orm/query.py22
1 files changed, 21 insertions, 1 deletions
diff --git a/test/orm/query.py b/test/orm/query.py
index 407757c10..dcd0ac548 100644
--- a/test/orm/query.py
+++ b/test/orm/query.py
@@ -1828,11 +1828,31 @@ class ImmediateTest(_fixtures.FixtureTest):
self.assertRaises(sa.orm.exc.MultipleResultsFound,
sess.query(User, Address).join(User.addresses).one)
-
@testing.future
def test_getslice(self):
assert False
+ @testing.resolve_artifact_names
+ def test_scalar(self):
+ sess = create_session()
+
+ eq_(sess.query(User.id).filter_by(id=7).scalar(), 7)
+ eq_(sess.query(User.id, User.name).filter_by(id=7).scalar(), 7)
+ eq_(sess.query(User.id).filter_by(id=0).scalar(), None)
+ eq_(sess.query(User).filter_by(id=7).scalar(),
+ sess.query(User).filter_by(id=7).one())
+
+ @testing.resolve_artifact_names
+ def test_value(self):
+ sess = create_session()
+
+ eq_(sess.query(User).filter_by(id=7).value(User.id), 7)
+ eq_(sess.query(User.id, User.name).filter_by(id=7).value(User.id), 7)
+ eq_(sess.query(User).filter_by(id=0).value(User.id), None)
+
+ sess.bind = sa.testing.db
+ eq_(sess.query().value(sa.literal_column('1')), 1)
+
class SelectFromTest(QueryTest):
keep_mappers = False