Skip to content

Commit 0ad814a

Browse files
authored
Merge pull request #156 from vdaskalov/issue-155
Modified alias of FileNotFoundError to OSError instead of IOError
2 parents 8a8d0e1 + a992b93 commit 0ad814a

File tree

6 files changed

+29
-5
lines changed

6 files changed

+29
-5
lines changed

cachecontrol/caches/file_cache.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
FileNotFoundError
1010
except NameError:
1111
# py2.X
12-
FileNotFoundError = IOError
12+
FileNotFoundError = OSError
1313

1414

1515
def _secure_open_write(filename, fmode):

tests/test_adapter.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,9 @@ def use_adapter():
2424
def sess(url, request):
2525
sess = request.param()
2626
sess.get(url)
27-
return sess
27+
yield sess
28+
# closing session object
29+
sess.close()
2830

2931

3032
class TestSessionActions(object):

tests/test_chunked_response.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,10 @@
1111

1212
@pytest.fixture()
1313
def sess():
14-
return CacheControl(requests.Session())
14+
sess = CacheControl(requests.Session())
15+
yield sess
16+
# closing session object
17+
sess.close()
1518

1619

1720
class TestChunkedResponses(object):

tests/test_etag.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,9 @@ def sess(self, url):
3737
cache=self.cache,
3838
serializer=NullSerializer(),
3939
)
40-
return sess
40+
yield sess
41+
# closing session object
42+
sess.close()
4143

4244
def test_etags_get_example(self, sess, server):
4345
"""RFC 2616 14.26

tests/test_regressions.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ def test_file_cache_recognizes_consumed_file_handle(self):
1717
s.get('http://httpbin.org/cache/60')
1818
r = s.get('http://httpbin.org/cache/60')
1919
assert r.from_cache
20+
s.close()
2021

2122

2223
def test_getattr_during_gc():

tests/test_storage_filecache.py

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,9 @@ def sess(self, url, tmpdir):
2929
self.url = url
3030
self.cache = FileCache(str(tmpdir))
3131
sess = CacheControl(requests.Session(), cache=self.cache)
32-
return sess
32+
yield sess
33+
# closing session object
34+
sess.close()
3335

3436
def test_filecache_from_cache(self, sess):
3537
response = sess.get(self.url)
@@ -105,8 +107,22 @@ def test_simple_lockfile_arg(self, tmpdir, value, expected):
105107
cache = FileCache(str(tmpdir))
106108

107109
assert issubclass(cache.lock_class, expected)
110+
cache.close()
108111

109112
def test_lock_class(self, tmpdir):
110113
lock_class = object()
111114
cache = FileCache(str(tmpdir), lock_class=lock_class)
112115
assert cache.lock_class is lock_class
116+
cache.close()
117+
118+
def test_filecache_with_delete_request(self, tmpdir, sess):
119+
# verifies issue #155
120+
url = self.url + ''.join(sample(string.ascii_lowercase, randint(2, 4)))
121+
sess.delete(url)
122+
assert True # test verifies no exceptions were raised
123+
124+
def test_filecache_with_put_request(self, tmpdir, sess):
125+
# verifies issue #155
126+
url = self.url + ''.join(sample(string.ascii_lowercase, randint(2, 4)))
127+
sess.put(url)
128+
assert True # test verifies no exceptions were raised

0 commit comments

Comments
 (0)