diff options
Diffstat (limited to 'tests/cache')
| -rw-r--r-- | tests/cache/tests.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/tests/cache/tests.py b/tests/cache/tests.py index 937a55acc5..c4d4522514 100644 --- a/tests/cache/tests.py +++ b/tests/cache/tests.py @@ -1762,6 +1762,12 @@ class FileBasedCacheTests(BaseCacheTests, TestCase): with open(cache_file, "rb") as fh: self.assertIs(cache._is_expired(fh), True) + def test_has_key_race_handling(self): + self.assertIs(cache.add("key", "value"), True) + with mock.patch("builtins.open", side_effect=FileNotFoundError) as mocked_open: + self.assertIs(cache.has_key("key"), False) + mocked_open.assert_called_once() + @unittest.skipUnless(RedisCache_params, "Redis backend not configured") @override_settings( |
