MCPcopy
hub / github.com/django/django / test_cache_write_unpicklable_object

Method test_cache_write_unpicklable_object

tests/cache/tests.py:1089–1118  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

1087
1088 @override_settings(CACHE_MIDDLEWARE_ALIAS=DEFAULT_CACHE_ALIAS)
1089 def test_cache_write_unpicklable_object(self):
1090 fetch_middleware = FetchFromCacheMiddleware(empty_response)
1091
1092 request = self.factory.get("/cache/test")
1093 request._cache_update_cache = True
1094 get_cache_data = FetchFromCacheMiddleware(empty_response).process_request(
1095 request
1096 )
1097 self.assertIsNone(get_cache_data)
1098
1099 content = "Testing cookie serialization."
1100
1101 def get_response(req):
1102 response = HttpResponse(content)
1103 response.set_cookie("foo", "bar")
1104 return response
1105
1106 update_middleware = UpdateCacheMiddleware(get_response)
1107 response = update_middleware(request)
1108
1109 get_cache_data = fetch_middleware.process_request(request)
1110 self.assertIsNotNone(get_cache_data)
1111 self.assertEqual(get_cache_data.content, content.encode())
1112 self.assertEqual(get_cache_data.cookies, response.cookies)
1113
1114 UpdateCacheMiddleware(lambda req: get_cache_data)(request)
1115 get_cache_data = fetch_middleware.process_request(request)
1116 self.assertIsNotNone(get_cache_data)
1117 self.assertEqual(get_cache_data.content, content.encode())
1118 self.assertEqual(get_cache_data.cookies, response.cookies)
1119
1120 def test_add_fail_on_pickleerror(self):
1121 # Shouldn't fail silently if trying to cache an unpicklable type.

Callers

nothing calls this directly

Calls 6

process_requestMethod · 0.95
getMethod · 0.45
process_requestMethod · 0.45
encodeMethod · 0.45

Tested by

no test coverage detected