def test_for_request_result_caching(self): # repeat test to show caching is unique per request instance, # even when the requests are for the same site for i, request in enumerate( [self.get_request(), self.get_request()], 1): with self.subTest(attempt=i): # force site query beforehand Site.find_for_request(request) # only the first lookup should result in a query with self.assertNumQueries(1): for i in range(4): TestSetting.for_request(request)
def test_for_request_returns_expected_settings(self): default_site_request = self.get_request() other_site_request = self.get_request(site=self.other_site) for request, expected_site_settings in ( (default_site_request, self.default_site_settings), (other_site_request, self.other_site_settings), ): with self.subTest(request=request): self.assertEqual(TestSetting.for_request(request), expected_site_settings)