Skip to content

Commit 7c40be3

Browse files
committed
Refactor: remove unused _readonly flag, simplify readonly WAL/SHM test
1 parent 4561075 commit 7c40be3

2 files changed

Lines changed: 18 additions & 18 deletions

File tree

Lib/dbm/sqlite3.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,6 @@ def __init__(self, path, /, *, flag, mode):
6969
except sqlite3.Error as exc:
7070
raise error(str(exc))
7171

72-
self._readonly = (flag == "ro")
7372
# This is an optimization only; it's ok if it fails.
7473
if flag != "ro":
7574
with suppress(sqlite3.OperationalError):

Lib/test/test_dbm_sqlite3.py

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -91,28 +91,29 @@ def test_readonly_keys(self):
9191
def test_readonly_iter(self):
9292
self.assertEqual([k for k in self.db], [b"key1", b"key2"])
9393

94-
def test_readonly_open_without_wal_shm(self):
95-
wal_path = self.filename + "-wal"
96-
shm_path = self.filename + "-shm"
94+
class Immutable(unittest.TestCase):
95+
def setUp(self):
96+
self.filename = os_helper.TESTFN
9797

98-
for suffix in wal_path, shm_path:
99-
os_helper.unlink(suffix)
98+
db = dbm_sqlite3.open(self.filename, "c")
99+
db[b"key"] = b"value"
100+
db.close()
100101

101-
try:
102-
self.db.close()
103-
except Exception:
104-
pass
102+
self.db = dbm_sqlite3.open(self.filename, "r")
105103

106-
os.chmod(self.filename, stat.S_IREAD)
104+
def tearDown(self):
105+
self.db.close()
106+
for suffix in "", "-wal", "-shm":
107+
os_helper.unlink(self.filename + suffix)
107108

108-
db = dbm_sqlite3.open(self.filename, "r")
109-
try:
110-
self.assertEqual(db[b"key1"], b"value1")
111-
self.assertEqual(db[b"key2"], b"value2")
112-
finally:
113-
db.close()
109+
def test_readonly_open_without_wal_shm(self):
110+
wal_path = self.filename + "-wal"
111+
shm_path = self.filename + "-shm"
114112

115-
os.chmod(self.filename, stat.S_IWRITE)
113+
self.assertFalse(os.path.exists(wal_path))
114+
self.assertFalse(os.path.exists(shm_path))
115+
116+
self.assertEqual(self.db[b"key"], b"value")
116117

117118

118119
class ReadWrite(_SQLiteDbmTests):

0 commit comments

Comments
 (0)