summaryrefslogtreecommitdiff
path: root/test/sql/test_query.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/sql/test_query.py')
-rw-r--r--test/sql/test_query.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/test/sql/test_query.py b/test/sql/test_query.py
index 8f7c4c6a7..da5b05d0a 100644
--- a/test/sql/test_query.py
+++ b/test/sql/test_query.py
@@ -706,6 +706,36 @@ class QueryTest(TestBase):
eq_(r.lastrowid, 1)
+ def test_returns_rows_flag_insert(self):
+ r = testing.db.execute(
+ users.insert(),
+ {'user_id':1, 'user_name':'ed'}
+ )
+ assert r.is_insert
+ assert not r.returns_rows
+
+ def test_returns_rows_flag_update(self):
+ r = testing.db.execute(
+ users.update().values(user_name='fred')
+ )
+ assert not r.is_insert
+ assert not r.returns_rows
+
+ def test_returns_rows_flag_select(self):
+ r = testing.db.execute(
+ users.select()
+ )
+ assert not r.is_insert
+ assert r.returns_rows
+
+ @testing.requires.returning
+ def test_returns_rows_flag_insert_returning(self):
+ r = testing.db.execute(
+ users.insert().returning(users.c.user_id),
+ {'user_id':1, 'user_name':'ed'}
+ )
+ assert r.is_insert
+ assert r.returns_rows
def test_graceful_fetch_on_non_rows(self):
"""test that calling fetchone() etc. on a result that doesn't