1212from ddt import data as ddt_data
1313from ddt import ddt
1414from django .conf import settings
15- from django .core .cache import cache
1615from django .test import TestCase , TransactionTestCase , override_settings
1716
1817from openedx_authz .engine .enforcer import AuthzEnforcer
1918from openedx_authz .engine .filter import Filter
2019from openedx_authz .engine .utils import migrate_policy_between_enforcers
20+ from openedx_authz .models .engine import PolicyCacheControl
2121from openedx_authz .tests .test_utils import make_action_key , make_role_key , make_scope_key , make_user_key
2222
2323
@@ -845,12 +845,11 @@ def test_load_policy_if_needed_initializes_cache_timestamp(self, mock_toggle):
845845 mock_toggle .return_value = True
846846
847847 AuthzEnforcer ._last_policy_load_timestamp = None # pylint: disable=protected-access
848- cache .clear ()
849848
850849 # get_enforcer calls load_policy_if_needed internally
851850 AuthzEnforcer .get_enforcer ()
852851
853- cached_timestamp = cache . get ( AuthzEnforcer . CACHE_KEY )
852+ cached_timestamp = PolicyCacheControl . get_last_modified_timestamp ( )
854853 self .assertIsNotNone (cached_timestamp )
855854 self .assertIsNotNone (AuthzEnforcer ._last_policy_load_timestamp ) # pylint: disable=protected-access
856855
@@ -871,7 +870,7 @@ def test_load_policy_if_needed_loads_when_stale(self, mock_toggle):
871870 # Set last load timestamp to stale value
872871 AuthzEnforcer ._last_policy_load_timestamp = stale_timestamp # pylint: disable=protected-access
873872 # Set last cache invalidation to a more recent time
874- cache . set ( AuthzEnforcer . CACHE_KEY , now , None )
873+ PolicyCacheControl . set_last_modified_timestamp ( now )
875874
876875 # get_enforcer calls load_policy_if_needed internally
877876 AuthzEnforcer .get_enforcer ()
@@ -898,7 +897,7 @@ def test_load_policy_if_needed_doesnt_reload_when_not_stale(self, mock_toggle):
898897 # Set last load timestamp to current time
899898 AuthzEnforcer ._last_policy_load_timestamp = now # pylint: disable=protected-access
900899 # Set last cache invalidation to an earlier time
901- cache . set ( AuthzEnforcer . CACHE_KEY , now - 60 , None ) # 60 seconds ago
900+ PolicyCacheControl . set_last_modified_timestamp ( now - 60 ) # 60 seconds ago
902901
903902 # get_enforcer calls load_policy_if_needed internally
904903 AuthzEnforcer .get_enforcer ()
@@ -920,10 +919,10 @@ def test_invalidate_policy_cache(self, mock_toggle):
920919
921920 AuthzEnforcer ._last_policy_load_timestamp = time .time () # pylint: disable=protected-access
922921 old_cache_value = time .time () - 60 # 60 seconds ago
923- cache . set ( AuthzEnforcer . CACHE_KEY , old_cache_value , None )
922+ PolicyCacheControl . set_last_modified_timestamp ( old_cache_value )
924923
925924 AuthzEnforcer .invalidate_policy_cache ()
926925
927- new_cache_value = cache . get ( AuthzEnforcer . CACHE_KEY )
926+ new_cache_value = PolicyCacheControl . get_last_modified_timestamp ( )
928927 self .assertIsNotNone (new_cache_value )
929928 self .assertGreater (new_cache_value , old_cache_value )
0 commit comments