Skip to content

Commit ace0dbb

Browse files
committed
Use with statement for tests
1 parent 73a14b8 commit ace0dbb

File tree

1 file changed

+35
-36
lines changed

1 file changed

+35
-36
lines changed

tests/reader_test.py

Lines changed: 35 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -144,59 +144,60 @@ def test_broken_database(self):
144144
def test_ip_validation(self):
145145
reader = open_database(
146146
'tests/data/test-data/MaxMind-DB-test-decoder.mmdb', self.mode)
147-
self.assertRaisesRegex(
148-
ValueError, "'not_ip' does not appear to be an IPv4 or "
149-
"IPv6 address", reader.get, ('not_ip'))
147+
with self.assertRaisesRegex(
148+
ValueError, "'not_ip' does not appear to be an IPv4 or "
149+
"IPv6 address"):
150+
reader.get('not_ip')
150151
reader.close()
151152

152153
def test_missing_database(self):
153-
self.assertRaisesRegex(FileNotFoundError, "No such file or directory",
154-
open_database, 'file-does-not-exist.mmdb',
155-
self.mode)
154+
with self.assertRaisesRegex(FileNotFoundError,
155+
"No such file or directory"):
156+
open_database('file-does-not-exist.mmdb', self.mode)
156157

157158
def test_nondatabase(self):
158-
self.assertRaisesRegex(
159-
InvalidDatabaseError,
160-
r'Error opening database file \(README.rst\). '
161-
r'Is this a valid MaxMind DB file\?', open_database, 'README.rst',
162-
self.mode)
159+
with self.assertRaisesRegex(
160+
InvalidDatabaseError,
161+
r'Error opening database file \(README.rst\). '
162+
r'Is this a valid MaxMind DB file\?'):
163+
open_database('README.rst', self.mode)
163164

164165
def test_too_many_constructor_args(self):
165-
cls = self.readerClass[0]
166-
self.assertRaises(TypeError, cls, 'README.md', self.mode, 1)
166+
with self.assertRaises(TypeError):
167+
self.readerClass[0]('README.md', self.mode, 1)
167168

168169
def test_bad_constructor_mode(self):
169-
cls = self.readerClass[0]
170-
self.assertRaisesRegex(ValueError,
171-
r'Unsupported open mode \(100\)',
172-
cls,
173-
'README.md',
174-
mode=100)
170+
with self.assertRaisesRegex(ValueError,
171+
r'Unsupported open mode \(100\)'):
172+
self.readerClass[0]('README.md', mode=100)
175173

176174
def test_no_constructor_args(self):
177-
cls = self.readerClass[0]
178-
self.assertRaisesRegex(
179-
TypeError, r' 1 required positional argument|'
180-
r'\(pos 1\) not found|'
181-
r'takes at least 2 arguments|'
182-
r'function missing required argument \'database\' \(pos 1\)', cls)
175+
with self.assertRaisesRegex(
176+
TypeError, r' 1 required positional argument|'
177+
r'\(pos 1\) not found|'
178+
r'takes at least 2 arguments|'
179+
r'function missing required argument \'database\' \(pos 1\)'):
180+
self.readerClass[0]()
183181

184182
def test_too_many_get_args(self):
185183
reader = open_database(
186184
'tests/data/test-data/MaxMind-DB-test-decoder.mmdb', self.mode)
187-
self.assertRaises(TypeError, reader.get, ('1.1.1.1', 'blah'))
185+
with self.assertRaises(TypeError):
186+
reader.get('1.1.1.1', 'blah')
188187
reader.close()
189188

190189
def test_no_get_args(self):
191190
reader = open_database(
192191
'tests/data/test-data/MaxMind-DB-test-decoder.mmdb', self.mode)
193-
self.assertRaises(TypeError, reader.get)
192+
with self.assertRaises(TypeError):
193+
reader.get()
194194
reader.close()
195195

196196
def test_metadata_args(self):
197197
reader = open_database(
198198
'tests/data/test-data/MaxMind-DB-test-decoder.mmdb', self.mode)
199-
self.assertRaises(TypeError, reader.metadata, ('blah'))
199+
with self.assertRaises(TypeError):
200+
reader.metadata('blah')
200201
reader.close()
201202

202203
def test_metadata_unknown_attribute(self):
@@ -227,9 +228,10 @@ def test_closed_get(self):
227228
reader = open_database(
228229
'tests/data/test-data/MaxMind-DB-test-decoder.mmdb', self.mode)
229230
reader.close()
230-
self.assertRaisesRegex(
231-
ValueError, 'Attempt to read from a closed MaxMind DB.'
232-
'|closed', reader.get, ('1.1.1.1'))
231+
with self.assertRaisesRegex(
232+
ValueError,
233+
'Attempt to read from a closed MaxMind DB.|closed'):
234+
reader.get('1.1.1.1')
233235

234236
def test_with_statement(self):
235237
filename = 'tests/data/test-data/MaxMind-DB-test-ipv4-24.mmdb'
@@ -242,14 +244,11 @@ def test_with_statement_close(self):
242244
reader = open_database(filename, self.mode)
243245
reader.close()
244246

245-
def use_with(reader):
247+
with self.assertRaisesRegex(ValueError,
248+
'Attempt to reopen a closed MaxMind DB'):
246249
with reader:
247250
pass
248251

249-
self.assertRaisesRegex(ValueError,
250-
'Attempt to reopen a closed MaxMind DB',
251-
use_with, reader)
252-
253252
def test_closed(self):
254253
reader = open_database(
255254
'tests/data/test-data/MaxMind-DB-test-decoder.mmdb', self.mode)

0 commit comments

Comments
 (0)