details: https://code.tryton.org/tryton/commit/0f21e3898079
branch: 8.0
user: Nicolas Évrard <[email protected]>
date: Wed Apr 22 18:19:51 2026 +0200
description:
User percent encoded name of inexistant database
Closes #14801
(grafted from 5fddfb00cfffa81177c0b5ddda6aaecaccfe19da)
diffstat:
trytond/trytond/backend/sqlite/database.py | 3 ++-
trytond/trytond/tests/test_transaction.py | 4 ++--
2 files changed, 4 insertions(+), 3 deletions(-)
diffs (27 lines):
diff -r 1785dbf0a94d -r 0f21e3898079 trytond/trytond/backend/sqlite/database.py
--- a/trytond/trytond/backend/sqlite/database.py Fri Apr 24 11:47:03
2026 +0200
+++ b/trytond/trytond/backend/sqlite/database.py Wed Apr 22 18:19:51
2026 +0200
@@ -547,7 +547,8 @@
db_path = safe_join(
config.get('database', 'path'), self.name + '.sqlite')
if not os.path.isfile(db_path):
- raise IOError("Database '%s' doesn't exist!" % db_path)
+ raise DatabaseOperationalError(
+ f"Database '{db_path}' doesn't exist!")
db_uri = base_uri._replace(path=db_path)
# Use unparse before replacing sqlite with file because SQLite accepts
diff -r 1785dbf0a94d -r 0f21e3898079 trytond/trytond/tests/test_transaction.py
--- a/trytond/trytond/tests/test_transaction.py Fri Apr 24 11:47:03 2026 +0200
+++ b/trytond/trytond/tests/test_transaction.py Wed Apr 22 18:19:51 2026 +0200
@@ -33,8 +33,8 @@
and ensure that it stops cleanly and allows starting of next
transaction'''
self.assertRaises(
- Exception, empty_transaction, "Non existant DB", USER,
- context=CONTEXT)
+ backend.DatabaseOperationalError, empty_transaction,
+ "Non%20existant%20DB", USER, context=CONTEXT)
self.assertTrue(empty_transaction(DB_NAME, USER, context=CONTEXT))
def test_set_user(self):