@@ -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
118119class ReadWrite (_SQLiteDbmTests ):
0 commit comments