summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_dbm_gnu.py
diff options
context:
space:
mode:
authorZsolt Cserna <cserna.zsolt@gmail.com>2018-09-27 19:54:34 (GMT)
committerBerker Peksag <berker.peksag@gmail.com>2018-09-27 19:54:34 (GMT)
commit9df346bf98069a87de14a3c2f69009d800994c63 (patch)
treea05c995a24c0182d60b80eebbe0009dcd506117e /Lib/test/test_dbm_gnu.py
parent59ee5b12938efbf534f2a19300a847bf6b23a77d (diff)
downloadcpython-9df346bf98069a87de14a3c2f69009d800994c63.zip
cpython-9df346bf98069a87de14a3c2f69009d800994c63.tar.gz
cpython-9df346bf98069a87de14a3c2f69009d800994c63.tar.bz2
bpo-34248: Add filename to error raised in {gnu,ndbm}.open() (GH-8590)
Report the filename to the exception when raising {gdbm,dbm.ndbm}.error in dbm.gnu.open() and dbm.ndbm.open() functions, so it gets printed when the exception is raised, and can also be obtained by the filename attribute of the exception object.
Diffstat (limited to 'Lib/test/test_dbm_gnu.py')
-rw-r--r--Lib/test/test_dbm_gnu.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/Lib/test/test_dbm_gnu.py b/Lib/test/test_dbm_gnu.py
index c96eff5..16b7fe6 100644
--- a/Lib/test/test_dbm_gnu.py
+++ b/Lib/test/test_dbm_gnu.py
@@ -144,6 +144,13 @@ class TestGdbm(unittest.TestCase):
self.assertTrue(b'key' in db)
self.assertEqual(db[b'key'], b'value')
+ def test_nonexisting_file(self):
+ nonexisting_file = 'nonexisting-file'
+ with self.assertRaises(gdbm.error) as cm:
+ gdbm.open(nonexisting_file)
+ self.assertIn(nonexisting_file, str(cm.exception))
+ self.assertEqual(cm.exception.filename, nonexisting_file)
+
if __name__ == '__main__':
unittest.main()