summaryrefslogtreecommitdiff
path: root/test/sql/defaults.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/sql/defaults.py')
-rw-r--r--test/sql/defaults.py18
1 files changed, 17 insertions, 1 deletions
diff --git a/test/sql/defaults.py b/test/sql/defaults.py
index 4f0f929f1..169d60c67 100644
--- a/test/sql/defaults.py
+++ b/test/sql/defaults.py
@@ -1,8 +1,9 @@
import testenv; testenv.configure_for_tests()
import datetime
from sqlalchemy import Sequence, Column, func
+from sqlalchemy.sql import select, text
from testlib import sa, testing
-from testlib.sa import MetaData, Table, Integer, String, ForeignKey
+from testlib.sa import MetaData, Table, Integer, String, ForeignKey, Boolean
from testlib.testing import eq_
from sql import _base
@@ -472,6 +473,21 @@ class PKIncrementTest(_base.TablesTest):
con.close()
+class EmptyInsertTest(testing.TestBase):
+ @testing.exclude('sqlite', '<', (3, 3, 8), 'no empty insert support')
+ def test_empty_insert(self):
+ metadata = MetaData(testing.db)
+ t1 = Table('t1', metadata,
+ Column('is_true', Boolean, server_default=('1')))
+ metadata.create_all()
+
+ try:
+ result = t1.insert().execute()
+ self.assertEquals(1, select([func.count(text('*'))], from_obj=t1).scalar())
+ self.assertEquals(True, t1.select().scalar())
+ finally:
+ metadata.drop_all()
+
class AutoIncrementTest(_base.TablesTest):
__requires__ = ('identity',)
run_define_tables = 'each'