diff options
author | Berker Peksag <berker.peksag@gmail.com> | 2017-02-26 15:22:38 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-02-26 15:22:38 (GMT) |
commit | 4a926caf8e5fd8af771b2c34bfb6e91c732331fe (patch) | |
tree | bddaa3a91ef435b1b18716b8385a6415c55fbd13 /Lib/sqlite3/test | |
parent | 46ce7599af82a929506baeaaee5c149970440c4c (diff) | |
download | cpython-4a926caf8e5fd8af771b2c34bfb6e91c732331fe.zip cpython-4a926caf8e5fd8af771b2c34bfb6e91c732331fe.tar.gz cpython-4a926caf8e5fd8af771b2c34bfb6e91c732331fe.tar.bz2 |
bpo-28518: Start a transaction implicitly before a DML statement (#245)
Patch by Aviv Palivoda.
Diffstat (limited to 'Lib/sqlite3/test')
-rw-r--r-- | Lib/sqlite3/test/transactions.py | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/Lib/sqlite3/test/transactions.py b/Lib/sqlite3/test/transactions.py index 45f1b04..b8a13de 100644 --- a/Lib/sqlite3/test/transactions.py +++ b/Lib/sqlite3/test/transactions.py @@ -179,6 +179,15 @@ class TransactionalDDL(unittest.TestCase): result = self.con.execute("select * from test").fetchall() self.assertEqual(result, []) + def CheckImmediateTransactionalDDL(self): + # You can achieve transactional DDL by issuing a BEGIN + # statement manually. + self.con.execute("begin immediate") + self.con.execute("create table test(i)") + self.con.rollback() + with self.assertRaises(sqlite.OperationalError): + self.con.execute("select * from test") + def CheckTransactionalDDL(self): # You can achieve transactional DDL by issuing a BEGIN # statement manually. |